回覆列表
  • 1 # 使用者758558304930

    這是一種硬體描述語言,它實際上主要是用來描述一個數字電路,如果看RTL檢視的話可以看程式碼描述出來電路的內容。VHDL和Verilog出現之前,設計一個數字電路主要是用邏輯真值表的形式,如果遇到大型的設計要畫非常多張增值表,考慮所有邏輯的可能性,非常麻煩。有了電腦以後可以用EDA技術把程式碼編譯成電路圖,這樣就大大縮短了設計週期,因為程式碼可以隨時刪改和複製。主要說說和計算機語言的區別,計算機語言是用指令對處理器進行操作,也就說處理器是已經設計好了並且遵守一定的規則(比如C語言不就是一種約定嗎,我們和計算機的約定,笑)。晶片則是和固定電路的約定,比如有幾個優先順序的中斷,幾個整合在裡面的模組之類的。那VHDL是什麼呢?是用來描述這個處理器的,如果可以的話,你可以用VHDL或Verilog把整個ARM處理器描述出來。你也可以在上面增加或減少一些自己想要的模組。所以說FPGA晶片是半定製的。編譯器原理這個就比較複雜了,超出我的知識範圍,不過這項技術應該非常成熟了,把VHDL程式碼翻譯成電路應該也是按協議來做的,建議看一下1164、1364這部分協議。至於System Verilog,這個比較新,據說是優化了驗證這方面的內容。國內用的人還比較少。PS :IEEE做了一件很對的事,FPGA的設計時間通常是, 設計:驗證= 3:7.

  • 2 # pzyyo24296

    在結構體中宣告兩個模組之間的連線線為“訊號(SIGNAL)”,然後在元件例化語句中用PORT MAP()將元件的埠對映到連線線(訊號)上,連線線是無所謂輸入/輸出的。例如將一個反相器的輸出連線到另一個反向器的輸入:ARCHITECTURE example OF Driver ISSIGNAL wire:std_logic;COMPONENT inverter PORT( a:IN std_logic;b:OUT std_logic);END COMPONENT;BEGIN U0:inverter PORT MAP ( a => in1,b => wire); U1:inverter PORT MAP ( a => wire,b => out1);END;

  • 中秋節和大豐收的關聯?
  • 什麼材料適合用來木雕?