vhdl在FPGA設計中的應用

集成電路設計規模及複雜度不斷增大,用傳統原理圖方法進行系統級芯片設計已不能滿足設計要求,而硬件描述語言(HDL,HardwareDescriptionLanguage)在進行大規模數字系統設計時具有諸多優勢,因此利用硬件描述語言進行系統行爲級設計已成爲FPGA與ASIC設計的主流。目前最流行、最具代表性的硬件描述語言是美國國防部(DOD)開發的VHDL(VHSICHardware Description Language)和GDA(Gateway DesignAutomation)公司開發的Verilog HDL。

vhdl在FPGA設計中的應用

VHSIC代表Very High Speed IntegratedCircuit,因此VHDL即甚高速集成電路硬件描述語言。VHDL語法嚴格,1987年即成爲IEEE標準,即IEEE STD1076-1987,1993年進一步修訂成爲IEEE STD 1076-1993。

  VHDL作爲IEEE標準,已得到衆多EDA公司支持,其主要優點有:

● 描述能力強,支持系統行爲級、寄存器傳輸級和門級三個層次設計;

● 可讀性好、移植性強,其源文件既是程序又是文檔,便於複用和交流;

● 支持自頂向下的設計和基於庫(Library-based)的設計;

● 支持同步、異步及隨機電路的設計;

● 與工藝無關,生命週期長。

VHDL語言主要應用在行爲層和寄存器傳輸層,這兩層可充分發揮出VHDL面向高層的'優勢。利用VHDL實現數字電路的實質是利用綜合工具將高層次描述轉化爲低層次門級描述,其中綜合可分爲三個層次:高層次綜合(High-LevelSynthesis)、邏輯綜合(Logic Synthesis)和版圖綜合(Layout Synthesis)。

  基於VHDL的FPGA系統行爲級設計

具體包括以下重要環節:設計輸入(Design Entry)、設計綜合(DesignSynthesis)、設計約束(Design Constraints)、設計實現(DesignImplement)、設計仿真(Design Simulation)和器件編程(Device Programming)。

設計輸入主要採用HDL(硬件描述語言)、ECS(Engineering SchematicCapture,原理圖編輯器)和FSM(Finite State Machine,有限狀態機);

設計綜合就是依據邏輯設計描述和約束條件,利用開發工具進行優化處理,將HDL文件轉變爲硬件電路實現方案,其實質就是優化設計目標的過程;

設計約束主要包括設計規則約束、時間約束、面積約束三種,通常時間約束的優先級高於面積約束;

設計實現對於FPGA分爲編譯規劃、佈局佈線(P AR,Place AndRoute)、程序比特流文件產生;對於CPLD則是編譯、配置、比特流文件產生;

設計仿真分爲功能仿真和時序時延仿真。功能仿真在設計輸入之後、綜合之前進行,只進行功能驗證,又稱爲前仿真。時序時延仿真在綜合和佈局佈線之後進行,能夠得到目標器件的詳細時序時延信息,又稱爲後仿真;

器件編程是指在功能仿真與時序時延仿真正確的前提下,將綜合後形成的位流編程下載到具體的FPGA/CPLD芯片中,又稱芯片配置。FPGA/CPLD編程下載通常可使用JTAG編程器、PROM文件格式器和硬件調試器三種方式,其中JTAG(JointTest Action Group,聯合測試行動組)是工業標準的IEEE1149.1邊界掃描測試的訪問接口,用作編程功能可省去專用的編程接口,減少系統引出線,有利於各可編程邏輯器件編程接口的統一,因此應用廣泛。