當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]一、概述 FPGA仿真方法: (1)交互式仿真方法:利用EDA工具的仿真器進(jìn)行仿真,使用方便,但輸入輸出不便于記錄規(guī)檔,當(dāng)輸入量較多時(shí)不便于觀察和比較。 (2)測試平臺法:為設(shè)計(jì)模塊專門設(shè)計(jì)的仿真程序,可

一、概述

FPGA仿真方法:

(1)交互式仿真方法:利用EDA工具的仿真器進(jìn)行仿真,使用方便,但輸入輸出不便于記錄規(guī)檔,當(dāng)輸入量較多時(shí)不便于觀察和比較。

(2)測試平臺法:為設(shè)計(jì)模塊專門設(shè)計(jì)的仿真程序,可以實(shí)現(xiàn)對被測模塊自動(dòng)輸入測試矢量,并通過波形輸出文件記錄輸出,便于將仿真結(jié)果記錄歸檔和比較。

二、仿真程序的設(shè)計(jì)方法

1 仿真的三個(gè)階段

(1)行為仿真:目的是驗(yàn)證系統(tǒng)的數(shù)學(xué)模型和行為是否正確,對系統(tǒng)的描述的抽象程度較高。在行為仿真時(shí),VHDL的語法語句都可以執(zhí)行。

(2)RTL仿真:目的是使被仿真模塊符合邏輯綜合工具的要求,使其能生成門級邏輯電路。在RTL仿真時(shí),不能使用VHDL中一些不可綜合和難以綜合的語句和數(shù)據(jù)類型。該級仿真不考慮慣性延時(shí),但要仿真?zhèn)鬏斞訒r(shí)。

(3)門級仿真:門級電路的仿真主要是驗(yàn)證系統(tǒng)的工作速度,慣性延時(shí)僅僅是仿真的時(shí)候有用在綜合的時(shí)候?qū)⒈缓雎浴?br />
2 仿真程序的內(nèi)容

(1)被測實(shí)體的引入。
(2)被測實(shí)體仿真信號的輸入。
(3)被測實(shí)體工作狀態(tài)的激活。
(4)被測實(shí)體信號的輸出
(5)被測實(shí)體功能仿真的結(jié)果比較,并給出辨別信息
(6)被測實(shí)體的仿真波形比較處理

3 仿真要注意的地方

(1)仿真信號可以由程序直接產(chǎn)生,也可以用TEXTIO文件產(chǎn)生后讀入。

(2)仿真程序中可以簡化實(shí)體描述,省略有關(guān)端口的描述。仿真程序?qū)嶓w描述的簡化形式為:
ENTITY 測試平臺名 IS
END 測試平臺名;
(3)對于功能仿真結(jié)果的判斷,可以用斷言語句(ASSORT)描述。

(4)為了比較和分析電子系統(tǒng)的功能,尋求實(shí)現(xiàn)指標(biāo)的最佳結(jié)構(gòu),往往利用一個(gè)測試平臺對實(shí)體的不同結(jié)構(gòu)進(jìn)行仿真,一般是應(yīng)用配置語句為同一被測實(shí)體選用多個(gè)結(jié)構(gòu)體。

CONFIGURATION 測試平臺名 OF 被測實(shí)體名 IS
FOR 被測實(shí)體的A的結(jié)構(gòu)體名
END FOR;
END 測試平臺名;
同樣,若選用結(jié)構(gòu)體B,則配置語句可寫為:
CONFIGURATION 測試平臺名 OF 被測實(shí)體名 IS
FOR 被測實(shí)體的B的結(jié)構(gòu)體名
END FOR;
END 測試平臺名;

4 VHDL仿真程序結(jié)構(gòu)

測試平臺僅僅是用于仿真,因此可以利用所有的行為描述語言進(jìn)行描述,下表表示了一個(gè)測試平臺所包含的部分,典型的測試平臺將包括測試結(jié)果和錯(cuò)誤報(bào)告結(jié)果。

(1)產(chǎn)生時(shí)鐘信號

-- Declare a clock period constant.
Constant ClockPeriod : TIME := 10 ns;
-- Clock Generation method 1:
Clock <= not Clock after ClockPeriod / 2;
-- Clock Generation method 2:
GENERATE CLOCK: process
begin
wait for (ClockPeriod / 2)
Clock <= ’1’;
wait for (ClockPeriod / 2)
Clock <= ’0’;
end process;

(2)提供仿真信號

提供仿真信號可以有兩種方法:絕對時(shí)間仿真和相對時(shí)間仿真。在絕對時(shí)間仿真方法中,仿真時(shí)間只是相對于零時(shí)刻的仿真時(shí)間。在相對時(shí)間仿真方法中,仿真的時(shí)間首先提供一個(gè)初值,在后繼的時(shí)間設(shè)置中相對于該初始時(shí)間進(jìn)行事件動(dòng)作。

絕對時(shí)間仿真:

MainStimulus: process begin
Reset <= ’1’;
Load <= ’0’;
Count_UpDn <= ’0’;
wait for 100 ns;
Reset <= ’0’;
wait for 20 ns;
Load <= ’1’;
wait for 20 ns;
Count_UpDn <= ’1’;
end process;
相對時(shí)間仿真:
Process (Clock)
Begin
If rising_edge(Clock) then
TB_Count <= TB_Count + 1;
end if;
end process;
SecondStimulus: process begin
if (TB_Count <= 5) then
Reset <= ’1’;
Load <= ’0’;
Count_UpDn <= ’0’;
Else
Reset <= ’0’;
Load <= ‘1’;
Count_UpDn <= ‘1’;
end process;
FinalStimulus: process begin
if (Count = "1100") then
Count_UpDn <= '0';
report "Terminal Count
Reached, now counting down."
end if;
end process;

(3)顯示結(jié)果

VHDL提供標(biāo)準(zhǔn)的std_textio函數(shù)包把輸入輸出結(jié)果顯示在終端上。

5 簡單的仿真程序

library IEEE;
use IEEE.std_logic_1164.all;
entity testbench is
end entity testbench;
architecture test_reg of testbench
component shift_reg is
port (clock : in std_logic;
reset : in std_logic;
load : in std_logic;
sel : in std_logic_vector(1 downto 0);
data : in std_logic_vector(4 downto 0);
shiftreg : out std_logic_vector(4 downto 0));
end component;
signal clock, reset, load: std_logic;
signal shiftreg, data: std_logic_vector(4 downto 0);
signal sel: std_logic_vector(1 downto 0);
constant ClockPeriod : TIME := 50 ns;
begin
UUT : shift_reg port map (clock => clock, reset => reset,
load => load, data => data,
shiftreg => shiftreg);
process begin
clock <= not clock after (ClockPeriod / 2);
end process;
process begin
reset <= ’1’;
data <= "00000";
load <= ’0’;
set <= "00";
wait for 200 ns;
reset <= ’0’;
load <= ’1’;
wait for 200 ns;
data <= "00001";
wait for 100 ns;
sel <= "01";
load <= ’0’;
wait for 200 ns;
sel <= "10";
wait for 1000 ns;
end process;
end architecture test_reg;

6 TEXTIO建立測試程序

在由仿真程序直接產(chǎn)生輸入信號的方法中,測試矢量是仿真程序的一個(gè)部分,如果系統(tǒng)比較復(fù)雜,測試矢量的數(shù)目非常大,修改測試矢量時(shí)就必須修改程序,重新編譯和仿真。工作量大。因此,在測試矢量非常大的時(shí)候可以用TEXTIO的方法來進(jìn)行仿真。

TEXTIO仿真方法:測試矢量從仿真程序中分離出來,單獨(dú)存于一個(gè)文件中(即TEXTIO文件),在仿真時(shí),根據(jù)定時(shí)要求按行讀出,并賦予相應(yīng)的輸入信號。這種方法允許采用同一個(gè)測試平臺,通過不同的測試矢量文件進(jìn)行不同的仿真。值得注意的是,測試矢量文件的讀取,需要利用TEXTIO程序包的功能。在TEXTIO程序包中,包含有對文本文件進(jìn)行讀寫的過程和函數(shù)。

LIBRARY IEEE;
USE IEEE.std_logic_1164.all;
LIBRARY ieee;
USE IEEE.STD_LOGIC_TEXTIO.ALL;
USE STD.TEXTIO.ALL;
ENTITY testbench IS
END testbench;
ARCHITECTURE testbench_arch OF testbench IS
COMPONENT stopwatch

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉