Chip123 科技應用創新平台

標題: Verilog用for語法寫合成,不可行嗎? [打印本頁]

作者: walltsou    時間: 2008-9-15 11:22 AM
標題: Verilog用for語法寫合成,不可行嗎?
開發程式使用for語法寫出可合成單元,在主管知道後下令不准用。因為此事件我也離開此部門。我想知道的是for語法合成會有問題嗎?
, [& n7 l. d7 X# r7 u0 N. R9 Q此事已經多年,我就純技術上想知道結果。
作者: jinkun    時間: 2008-9-15 12:54 PM
標題: Verilog用for語法寫合成,不可行嗎?
以我的看法是可行的,但是for的使用會大量消耗你的FPGA硬體資源以及速度,所以不建議使用!
作者: walltsou    時間: 2008-9-15 01:52 PM
我是認為合成的出來,只要驗證有穩就行了。無奈人事之間的問題並非技術可解,他要你走就是用這種理由,上層也信。後來我轉部門,還封殺我碰硬體。今年他終於離開公司,那個演算法公司仍無人解。我只是做個準備,問問有無問題吧了。
作者: waynez    時間: 2008-9-22 10:15 PM
這是絕對可以的,synthesis只是把妳寫的for給展開來而已
作者: masonchung    時間: 2008-9-22 10:19 PM
很多公司都有這種欺下瞞上的小主管阿
作者: lkbinbin    時間: 2008-10-23 11:19 AM
for语句太占资源,假如你用for来循环100次,综合出来的结果就有100个相同的硬件 资源,我是这样理解的,请各位大大们指点迷津!!
作者: addn    時間: 2008-10-23 12:35 PM
您好6 B9 {! D. O6 v
你的設計,本來不就是會有100個相同的硬件嗎
- X" S' z+ j' p* z5 Z/ X, T- ^, `那麼用for可以簡化描述,用for 寫出的源碼可以比較簡潔. ~; w: G; ^- ]' i0 t
( U( W8 i( t( T, A6 h
假設你的設計會佔50% 的資源/ a& ?& g1 N  y3 i0 x
那麼用for的寫法,要100行的源碼
% @7 b: ~2 S5 |不用for可能要1000行
0 s+ B; y- k* q1 Q0 o9 L+ M8 E. I" |8 W& O" |: [' U' y
一樣的功能,佔相同的資源
作者: walltsou    時間: 2008-10-29 09:35 AM
認同。
  `; E/ B' ]6 K9 Y" B之前那件事,主管確實就是我要用if寫。
% N6 ?! }; Y* x9 y* j' G可是我是覺得那是無重覆使用的程式碼。可以改為具有規則性的for描述。  S. D: x2 W3 }; |. T  I/ c
不過,個人認知是:
- ~8 P9 z) M, K; A* Q. w; F- m* B每天都在用Compiler,不管是C/C++或是Verilog/VHDL,都只是在用Compiler。2 U; Q6 N( ^/ M0 {# u$ d! Q4 f
Compiler不好,不能限定人的思考。被語法限定了,那就被束縛了。
: F. s7 ?- G( J* J只要一天用電腦,就不可能不用電腦語言。要善用電腦,就要了解Compiler原理。
9 D! i% {' H" z8 u4 N' j7 ~這是我做電子時的認知,只是當時不被認同。
作者: michael6172    時間: 2008-11-4 09:28 AM
但是Verilog屬硬體描述語言,所以要以硬體的想法去寫,若把Verilog當成程式語言來寫,只會多出一堆不必要的邏輯,因此才發展出DSP for VLSI 阿....,所以禁用for,改以DSP來設計for的硬體& z  w* t2 [2 ?* q& r

; s+ p% H8 o  b! @4 Fp.s. 此DSP 為 Digital signal processing
作者: walltsou    時間: 2008-11-6 05:21 PM
標題: 唉!又是一個把Compiler和電腦程式混起來的人。
Compiler只是把程式轉成可以執行的機器碼。轉成電晶體結構檔,也是一種機器碼。只是電晶體結構檔無法像電腦程式一樣載入執行,要經由電子程序實現。5 ~: _% K& C' v5 I/ u" R- I% ~) G: T
只是HDL主要是描述平行處理結構的語言,而Verilog僅採用C的語法表示。確實很多生手以為是電腦C語言。0 S7 M& V# n/ g* s( n- A
以電腦一次執行一個指令的方法來寫HDL,一定是寫不好。
3 ^+ F" b7 C0 |6 Y2 r% zfor對我來說,只是一個具索引描述。又不會一行行執行,本就是處理平行結構的事。
9 `# v; }- Z/ O, n* B# \如果對for有意見,請提出會出問題的地方,像是容易誤用等等的例子。2 G$ r- s! {* y! `
不然只是一再重覆"工具限定人之思考"的框框中。




歡迎光臨 Chip123 科技應用創新平台 (http://www.chip123.com/) Powered by Discuz! X3.2