- 相關(guān)推薦
軟硬件配置方案設(shè)計
很多時候我們需要將軟硬件完美結(jié)合在一起才能達到目標要求,下面就是小編為您收集整理的軟硬件配置方案設(shè)計的相關(guān)文章,希望可以幫到您,如果你覺得不錯的話可以分享給更多小伙伴哦!
軟硬件配置方案設(shè)計一
隨著現(xiàn)代網(wǎng)絡(luò)技術(shù)的發(fā)展,嵌放式系統(tǒng)如單片機、DSP等系統(tǒng)對接入網(wǎng)絡(luò)的需求日益增加,例如具有遠程抄表功能的電表系統(tǒng)、楞以進行遠程控制的信息電系統(tǒng)等。本文采用TI公司的TMS320VC33DSP芯片設(shè)計與Realtek公司的RTL8019網(wǎng)卡的硬件接口電路,并在DSP中用軟件實現(xiàn)TCP/IP協(xié)議,使DSP芯片具備上網(wǎng)功能,從而可以用計算機通過網(wǎng)卡與DSP電路板進行大量數(shù)據(jù)交換并對其進行控制。
1、硬件設(shè)計
DSP與網(wǎng)卡的硬件接口電路圖如圖1所示。
DSP的數(shù)據(jù)總線低16位接ISA網(wǎng)卡的16位數(shù)據(jù)線,ISA網(wǎng)卡的IOCS16線接高電平,設(shè)置網(wǎng)卡為16位的模式。
網(wǎng)卡共有20根地址線。將A7~A8、A10~A19接地,A0~A6和A9分別接DSP的A0~A7,用到的網(wǎng)卡地址為0240H~025FH,映射到DSP的Page3空間,地址映射為C000C0H~C000DFH。
DSP的Reset信號用于復位網(wǎng)卡,由于DSP的Reset信號低有效,而網(wǎng)卡的Reset信號高有效,故中間應(yīng)接非門。
DSP的Page3和R/W信號用于選能網(wǎng)卡的讀寫信號IOR、IOW,實現(xiàn)的邏輯關(guān)系如圖2所示。
IORQ是網(wǎng)卡的中斷9,通過非門后接DSP的INT1引腳。
RTL8019網(wǎng)卡有三種工作方式:
第一種為跳線方式,網(wǎng)卡的I/O和中斷由跳線決定;
第二種為即插即用方式,由軟件進行自動配置plugandplay;
第三種為免跳線方式,網(wǎng)卡的I/O和中斷由外接的93C46里的內(nèi)容決定。
計算機上一是即插即用方式,為了降低軟件編程的復雜度,將網(wǎng)卡設(shè)置為跳線方式。
上述所有的譯碼邏輯都在EPM7129中實現(xiàn)。
74ALVC16425是總線驅(qū)動芯片,可實現(xiàn)3.3V到5V的電平轉(zhuǎn)換。由于TMS320VC33和EPM7128是3.3V的器件,而ISA總線是5V的,所以信號線不能直接連接,需要通過74ALVC164245進行電平轉(zhuǎn)換和隔離。
2、軟件設(shè)計
2.1網(wǎng)卡硬件驅(qū)動程序的設(shè)計
網(wǎng)卡驅(qū)動程序主要包括以下幾部分:
(1)NIC的初始化
NIC是網(wǎng)絡(luò)接口控制芯片,它負責網(wǎng)絡(luò)上數(shù)據(jù)的接收和發(fā)送。為了能夠使NIC啟動并處于準備接收或準備發(fā)送數(shù)據(jù)的狀態(tài),必須對相關(guān)的寄存器進行初始化。這些寄存器包括CR、DCR、RBCR、PSTART、PSTOP、ISR、IMR、PAR0~PAR5、MAR0~MAR7、CURR、TCP、RCR等。
。2)中斷服務(wù)程序
中斷服務(wù)程序一般完成兩項任務(wù):一是設(shè)置中斷標志,以使相關(guān)程序能以此發(fā)現(xiàn)發(fā)生了中斷;二取得中斷狀態(tài)寄存器的值,并將引起中斷的具體原因提交給相應(yīng)的程序,這一過程也是通過設(shè)置中斷原因標志完成的。需要注意的,中斷服務(wù)程序開始的時候要保護中斷現(xiàn)場,待程序處理完成后要恢復中斷現(xiàn)場;中斷服務(wù)程序應(yīng)盡可能短小,以便在盡可能短的時間內(nèi)執(zhí)行完成,因此需要將一些不民要的工作交給其它程序來完成。
。3)幀發(fā)送程序
在網(wǎng)絡(luò)中,幀傳輸?shù)倪^程是:發(fā)送方將待發(fā)送的數(shù)據(jù)按幀格式要求封裝成幀,然后通過網(wǎng)卡將幀發(fā)送到網(wǎng)絡(luò)的傳輸線上;接收方根據(jù)接收到的幀的目的地址研究是否將該幀提交給上層應(yīng)用程序。幀的發(fā)送是指將待發(fā)送的數(shù)據(jù)以幀的形式發(fā)送到網(wǎng)絡(luò)傳輸線上,因此,幀的發(fā)送過程應(yīng)該包括以下幾個步驟:
①裝幀;
、趯腿隢IC的發(fā)送緩沖區(qū);
、鄢跏蓟l(fā)送控制寄存器;
④啟動NI
C將該幀發(fā)送到網(wǎng)絡(luò)傳輸線上。
。4)幀接收程序
幀接收是指將網(wǎng)絡(luò)上的數(shù)據(jù)幀接收并緩存于網(wǎng)卡的接收緩沖環(huán)中,然后由主機程序?qū)⒕彺嬗诮邮站彌_環(huán)的幀讀走并存入內(nèi)存中以備程序使用。從中可以看出,幀的接收過程分成兩卡;
、俚谝徊接蒒IC通過本地DMA將幀存入接收緩沖環(huán);
、诘诙ㄊ峭ㄟ^遠程DMA并在主機的配合下將接收緩沖環(huán)中的幀讀入內(nèi)存。
2.2TCP/IP協(xié)議的實現(xiàn)
2.2.1DSP中與PC機中實現(xiàn)TCP/IP協(xié)議不同
TCP/IP協(xié)議最先是在UNIX系統(tǒng)中實現(xiàn)的,后來在LINUX、DOS和WINDOWS系統(tǒng)中也實現(xiàn)了TCP/IP。但是,在UNIX上實現(xiàn)的TCP/IP協(xié)議的源代碼并不能直接移植到DSP上來,這是因為PC機和DSP存在著巨大的差異。
PC機的運算速度非常快,一般都有一個多任務(wù)的操作系統(tǒng),可以多任務(wù)并行執(zhí)行,通過硬中斷與中斷、消息隊列和各種插口實現(xiàn)ATCP/IP各協(xié)議層之間的通信和整個網(wǎng)絡(luò)的通信。而DSP運行速度相對較慢,缺乏多任務(wù)操作系統(tǒng)的平臺,只能通過順序執(zhí)行加硬件中斷的方式來實現(xiàn),并且因其還要同時執(zhí)行數(shù)據(jù)采集、串口中斷等任務(wù),所以中斷程序應(yīng)盡量短,只完成設(shè)置各種狀態(tài)的標志位,而將相對較慢的網(wǎng)絡(luò)數(shù)據(jù)包的處理放在主程序中執(zhí)行,以減少各種任務(wù)之間的沖突。
PC機的內(nèi)存非常大,現(xiàn)在一般都可達到32~128M的存儲容量,可以動態(tài)地分配和釋放內(nèi)存,很容易實現(xiàn)存儲器緩存mbuf、網(wǎng)絡(luò)控制塊ncb等鏈狀結(jié)構(gòu),且可隨意增刪;同時能維護多條網(wǎng)絡(luò)連接,由于計算機處理速度快,幾乎不用考慮緩沖區(qū)溢出的問題。而DSP內(nèi)部RAM一般只有十幾K,加上外部擴展的RAM也只能達到幾十K的容量,一個最大的以太網(wǎng)數(shù)據(jù)包就有1.5K左右,如果也按PC機的內(nèi)存管理方式和數(shù)據(jù)結(jié)構(gòu),使用mbuf鏈,RAM肯定不夠用,因此只能在RAM中分配一個固定的1514字節(jié)的.區(qū)段來存放接收到的以太網(wǎng)數(shù)據(jù)包,接收一包處理一包。
PC機中TCP/IP協(xié)議都是分層次實現(xiàn)的,相互之間都是通過參數(shù)傳遞進行聯(lián)系,這樣有利于提高程序的模塊化和獨立性。而在DSP中,由于參數(shù)傳遞會占用過多的程序空間,且降低DSP的執(zhí)行速度,所以應(yīng)盡量減少參數(shù)傳遞,轉(zhuǎn)而使用全局變量和外部變量等來達到值的傳遞,因此各程序間的依賴程度大,往往會共享某一些變量和數(shù)據(jù)。
PC機上實現(xiàn)了比較完整的TCP/IP協(xié)議。而在DSP中,由于運算速度和內(nèi)存的限制,不可能支持所有的協(xié)議,一般只實現(xiàn)需要的部分,不需要的協(xié)議一概都不支持;而且即使需要的協(xié)議也不用像在PC機上實現(xiàn)那么復雜,可以根據(jù)硬件的具體情況和實現(xiàn)的需求進行必要的簡化。
2.2.2TCP/IP協(xié)議的具體實現(xiàn)
TCP/IP協(xié)議是一個協(xié)議簇,包含了很多協(xié)議,在DSP上實現(xiàn)的所有協(xié)議如圖3所示,通?煞譃樗膶樱ú话ㄎ锢韺樱。
根據(jù)DSP的結(jié)構(gòu)特點和所需要實現(xiàn)的功能,在DSP中實現(xiàn)了ARP(地址解析協(xié)議)、IP(網(wǎng)際協(xié)議)、ICMP(Internet控制報文協(xié)議)、UDP(用戶數(shù)據(jù)報協(xié)議)和TCP(傳輸控制協(xié)議),并對它們進行了簡化。
2.2.2TCP/IP協(xié)議的具體實現(xiàn)
TCP/IP協(xié)議是一個協(xié)議簇,包含了很多協(xié)議,在DSP上實現(xiàn)的所有協(xié)議如圖3所示,通?煞譃樗膶樱ú话ㄎ锢韺樱。
根據(jù)DSP的結(jié)構(gòu)特點和所需要實現(xiàn)的功能,在DSP中實現(xiàn)了ARP(地址解析協(xié)議)、IP(網(wǎng)絡(luò)協(xié)議)、ICMP(Internet控制報文協(xié)議)、UDP(用戶數(shù)據(jù)報協(xié)議)和TCP(傳輸控制協(xié)議),并對它們進行了簡化。
在鏈路層中實現(xiàn)了ARP。每種網(wǎng)絡(luò)都有自己的尋址機制,以太網(wǎng)通過以太網(wǎng)地址即通常所說的網(wǎng)卡硬件地址MAX進行尋址的,每個網(wǎng)卡出廠時都有一個唯一的MAC地址。IP地址則僅僅是對于TCP/IP簇有意義的地址,是一種虛擬地址。當賦予IP地址的IP包要在以太網(wǎng)中傳播時,必須將IP地址轉(zhuǎn)化為以太網(wǎng)地址才能進行正確的傳輸。ARP協(xié)議就是將32位的IP地址動態(tài)地映射為48位的以太網(wǎng)地址,從而保證網(wǎng)絡(luò)的正確傳輸。ARP協(xié)議由兩個文件arpin.c和arpout.c實現(xiàn)。arpin.c負責接收網(wǎng)絡(luò)上廣播的arp包,判斷arp包的類型是網(wǎng)絡(luò)上其它機子的請求包還是返回本機的響應(yīng)包,
判斷其合法性并進行相應(yīng)的處理;arpout.c負責主機向網(wǎng)絡(luò)發(fā)送數(shù)據(jù)報時發(fā)送arp請求包以及被arpin.c調(diào)用響應(yīng)收到的arp請求包。
在網(wǎng)絡(luò)層中實現(xiàn)了IP和ICMP。IP協(xié)議是TCP/IP協(xié)議簇中最核心的協(xié)議,它提供無連接的數(shù)據(jù)報傳送服務(wù),所有上層協(xié)議都要以IP數(shù)據(jù)包格式傳輸。IP協(xié)議由兩個文件ipin.c和ipout.c實現(xiàn)。Ipin.c負責接收IP數(shù)據(jù)包,收到IP包后,首先判斷其版本號、數(shù)據(jù)長度、目的地址、檢驗和是否正確,再根據(jù)IP首部的協(xié)議類型字段的值交給相應(yīng)的上層協(xié)議處理;ipout.c負責發(fā)送IP數(shù)據(jù)包,接收上層協(xié)議傳遞下來的數(shù)據(jù),加上20字節(jié)的IP首部,正確設(shè)置源IP地址和目的IP地址、協(xié)議類型,計算檢驗和,交給下面的鏈路層發(fā)送。PC機上的IP數(shù)據(jù)包,當它的長度超過網(wǎng)絡(luò)的MTU時,允許對它分段;在DSP中,則不支持IP數(shù)據(jù)包分段,也不支持IP選項字段。ICMP協(xié)議負責傳遞差錯報文以及其它需要注意的信息,且由ICMP首部8位的類型字段和8位的代碼字段決定信息的種類。在DSP中只實現(xiàn)了對回顯請求(類型代碼為80)報文的處理,從IP層收到ICMP包后,判斷其類型代碼段是否為80。如果是,將這兩個字段設(shè)置為00(回顯應(yīng)答),計算檢驗和,再交給IP層發(fā)送;如果不是,則予以丟棄。從而實現(xiàn)了對ping功能的支持。
本文通過DSP與網(wǎng)卡的硬件接口的設(shè)計及編程,使DSP實現(xiàn)了基于以太網(wǎng)的TCP/IP通信,從而使DSP可以通過網(wǎng)線進行聯(lián)網(wǎng),并可以實時地與計算機進行通信,交換大量的數(shù)據(jù)和控制信息。本文所介紹的技術(shù)已經(jīng)在作者參加的國家"973"項目"復雜自然環(huán)境時空定量信息的獲取與融合處理的理論與應(yīng)?quot;的硬件設(shè)計中得到應(yīng)用,并運行良好。
軟硬件配置方案設(shè)計二
傳統(tǒng)的嵌入式系統(tǒng)中,設(shè)計周期、硬件和軟件的開發(fā)是分開進行的,并在硬件完成后才將系統(tǒng)集成在一起,很多情況下,硬件完成后才開始進行實時軟件和整體調(diào)試。軟硬件聯(lián)合仿真是一種在物理原型可用前,能盡早開始調(diào)試程序的技術(shù)。
軟硬件聯(lián)合仿真有可能使軟件設(shè)計工程師在設(shè)計早期著手調(diào)試,而采用傳統(tǒng)的方法,設(shè)計工程師直到硬件設(shè)計完成才能進行除錯處理。有些軟件可在沒有硬件支持的情況下完成任務(wù)的編碼,如不涉及到硬件的算法。與硬件相互作用的編碼在獲得硬件之前編寫,但只有在硬件上運行后,才能真正對編碼進行調(diào)試。通過采用軟硬件聯(lián)合仿真技術(shù),可在設(shè)計早期開始這一設(shè)計調(diào)試過程。由于軟件的開發(fā)通常在系統(tǒng)開發(fā)的后段完成,在設(shè)計周期中較早的開始調(diào)試有可能將使這一項目提早完成,該技術(shù)會降低首次將硬件和軟件連接在一起時出現(xiàn)意外而致使項目延期完成所造成的風險。
在取得物理原型前,采用軟硬件聯(lián)合仿真技術(shù)對硬件和軟件之間的接口進行驗證,將使你不會花太多的時間在后期系統(tǒng)調(diào)試上。當你確實拿到物理原型開始在上面跑軟件的時候,你會發(fā)現(xiàn)經(jīng)過測試的軟件部分將會正常工作,這會節(jié)省項目后期的大量時間及努力。
軟硬件聯(lián)合仿真系統(tǒng)由一個硬件執(zhí)行環(huán)境和一個軟件執(zhí)行環(huán)境組成,通常軟件環(huán)境和硬件環(huán)境都有自己的除錯和控制界面,軟件通過一系列由處理器啟動的總線周期與硬件的交互作用。本文以一個MiniWeb卡的開發(fā)介紹一種軟硬件聯(lián)合仿真系統(tǒng)。
該方案的核心是采用一個51單片機仿真引擎GoldBullISS51(以下簡稱ISS51),ISS51是51單片機開發(fā)環(huán)境KeiluVision2的一個插件,ISS51具有連接Keil和硬件仿真環(huán)境Modelsim的接口,可以實現(xiàn)軟硬件同步仿真。在該系統(tǒng)中,Keil作為軟件調(diào)試界面,Modelsim作為硬件仿真和調(diào)試界面,ISS51負責軟件執(zhí)行、監(jiān)控軟件斷點、單步執(zhí)行、內(nèi)存和寄存器數(shù)據(jù)返回給Keil、CPU總線時序產(chǎn)生和捕獲、內(nèi)部功能模塊(如定時器,串口)的運行等功能。
MiniWeb卡介紹
MiniWeb卡是一個運行在單片機上的Web服務(wù)器,提供網(wǎng)口連接,有大容量文件系統(tǒng),提供TFTP和HTTP服務(wù)。盡管軟件系統(tǒng)比較復雜,但優(yōu)化編譯后,執(zhí)行代碼還不足25K,為后續(xù)升級留下了足夠空間。
51CPU采用SST89系列,這種CPU具有ISP功能,可以通過RS232串口,直接將目標碼下載到CPU。
DMA控制邏輯是一個可編程邏輯器件,采用的是ALTERA的CPLDEPM240,主要功能是實現(xiàn)外圍器件之間的DMA傳遞。因為51CPU進行IO訪問是很低效的,需要24個時鐘周期才能進行一
次IO訪問,在外圍設(shè)備之間轉(zhuǎn)移數(shù)據(jù)則需要更多的時鐘周期,使用DMA控制邏輯可以達到3個時鐘周期就能轉(zhuǎn)移一個字節(jié)。本系統(tǒng)中處理多種網(wǎng)絡(luò)協(xié)議,需要大量報文收發(fā)和文件系統(tǒng)訪問,采用DMA可以極大地提高51單片機的數(shù)據(jù)處理速度。DMA通道主要有MAC芯片與RAM之間的數(shù)據(jù)塊轉(zhuǎn)移,SMARTMEDIA和RAM之間的數(shù)據(jù)塊轉(zhuǎn)移。
網(wǎng)卡芯片采用的是AX88796,主要的優(yōu)點是可以和51CPU方便地接口;支持100M以太網(wǎng),速度高;有較大的接收報文緩存,能夠平滑網(wǎng)絡(luò)流量,減少因51CPU處理速度慢導致的報文丟棄和重發(fā)。
SMARTMEDIA是一個移動存儲卡,主要用于存儲文件,MiniWeb卡支持8M到256M的SMD卡。
文件系統(tǒng)是MiniWeb卡的新開發(fā)模塊,文件系統(tǒng)的測試主要通過TFTP來進行,為此MiniWeb卡上的TFTP服務(wù)程序進行了特殊設(shè)計,支持格式化SMARTMEDIA,獲取剩余空間,獲取文件名列表,上傳、下載和刪除文件。
軟硬件聯(lián)合仿真的必要性:
MiniWeb卡軟件模塊多,軟件開發(fā)風險較大。軟件對硬件的依賴較強,F(xiàn)LASH存儲器的訪問驅(qū)動、網(wǎng)卡驅(qū)動、DMA驅(qū)動,需要軟硬件協(xié)同調(diào)試。
文件系統(tǒng)的`開發(fā),在仿真環(huán)境下更容易和快捷。比如在仿真結(jié)束時,可以將SMARTMEDIA仿真模型中的數(shù)據(jù)倒換到磁盤文件中,在仿真開始時,將磁盤文件中的數(shù)據(jù)加載到SMARTMEDIA仿真模型中,在定位文件系統(tǒng)的問題時,這一個功能很有用。
采用軟硬件聯(lián)合仿真,便于系統(tǒng)前期設(shè)計。51單片機的外部RAM訪問效率較低,內(nèi)存拷貝、外部器件之間的數(shù)據(jù)塊轉(zhuǎn)移很浪費時間。將大量數(shù)據(jù)的拷貝操作或數(shù)據(jù)塊校驗、比較操作在CPLD內(nèi)實現(xiàn),可以大大改進51單片機處理數(shù)據(jù)的能力。通過軟硬件聯(lián)合仿真,可以評估CPLD處理數(shù)據(jù)對性能的改進。
MiniWeb卡軟硬件聯(lián)合仿真系統(tǒng):
軟硬件聯(lián)合仿真主要解決的問題是系統(tǒng)功能設(shè)計與驗證,它不解決電源、濾波電容、總線電平兼容問題。
做系統(tǒng)仿真,首先要對硬件系統(tǒng)建模。我們關(guān)注的是系統(tǒng)設(shè)計的正確性和可執(zhí)行性。
系統(tǒng)中的串口只是用來支持ISP下載軟件,軟件部分沒有對串口做任何操作,所以系統(tǒng)仿真可以不必考慮。
網(wǎng)卡芯片AX88796,廠商沒有提供仿真模型。它與CPU的接口符合ISA接口標準,軟件對AX88796的操作是根據(jù)NE2000標準網(wǎng)卡芯片設(shè)計的,由此我們建立了一個網(wǎng)卡芯片的仿真模型。我們設(shè)計了一個MACBFM來仿真網(wǎng)卡芯片的ISA接口,NE2000定義的寄存器在C模型中實現(xiàn),MACBFM與NE2000寄存器C模型通過PLI接口交換數(shù)據(jù)。
SRAM仿真模型是很容易獲取的,很多器件生產(chǎn)商都提供Verilog仿真模型,但器件生產(chǎn)商提供的Verilog仿真模型都包含復雜的延時控制代碼,這會影響仿真速度。根據(jù)經(jīng)驗,我們可以確保SRAM在單板設(shè)計中被正確應(yīng)用,不會產(chǎn)生時序問題,所以我們可以采用一個簡化的SRAM仿真模型,這是我們自己設(shè)計的,有效代碼只有十幾行。
51CPUBFM負責單片機管腳時序的產(chǎn)生和捕獲。51CPUBFM是與ISS51緊密捆綁的,由ISS51安裝程序提供。
SMARTMEDIA是三星公司提供的仿真模型,我們使用的也是三星公司的同類型存儲卡。該模型可以用于驗證軟件操作SMARTMEDIA的正確性和DMAController的接口時序。
DMAController是MiniWeb卡硬件開發(fā)的一部分,將邏輯設(shè)計代碼應(yīng)用于仿真,既能檢測邏輯設(shè)計的正確性,又能使整個仿真系統(tǒng)得以正常運轉(zhuǎn)。
虛擬網(wǎng)卡
做系統(tǒng)仿真,必須輸入來自真實世界的激勵,并將仿真系統(tǒng)的輸出傳遞到真實世界。即便是不能連接到真實世界,也應(yīng)該提供模擬真實世界的輸入,并對仿真系統(tǒng)的輸出進行檢測和分析。
對于MiniWeb卡來說,它和真實環(huán)境是通過網(wǎng)口連接的。使用虛擬網(wǎng)卡技術(shù),能夠?qū)D3中的MACCModel與虛擬網(wǎng)卡進行通訊。
對于運行在Windows系統(tǒng)上的應(yīng)用程序來說,它并不知道網(wǎng)卡是虛擬的還是真實的,應(yīng)用程序通過虛擬網(wǎng)卡收發(fā)數(shù)據(jù),事實上是與仿真系統(tǒng)在進行網(wǎng)絡(luò)通信。
這樣就可以使用TFTP向MiniWeb卡仿真系統(tǒng)傳遞網(wǎng)頁文件,使用IE瀏覽MiniWeb卡仿真系統(tǒng)中的網(wǎng)頁,MiniWeb卡的所有功能都能夠被檢驗。
使用網(wǎng)絡(luò)臭探器Sniffer可以監(jiān)控虛擬網(wǎng)卡的報文流,方便協(xié)議調(diào)試。
仿真加速技術(shù)
軟硬件聯(lián)合仿真,影響仿真速度的瓶頸在HDL代碼部分的仿真。如果不設(shè)法提高HDL代碼部分的仿真速度,軟件調(diào)試就非常低效。
提高硬件仿真速度的方法之一是軟件硬件仿真采用事件同步,只在CPU訪問IO時保持軟件和硬件是同步的。
仿真加速方法之二是硬件仿真系統(tǒng)時鐘休眠。對于MiniWeb卡來說,只
有DMAController是受時鐘控制的,軟件沒有操作DMAController的期間,DMAController的運作是毫無意義的,所以可以在非DMA操作期間,對時鐘進行休眠;ISS51在每次IO訪問時,給出與上次IO訪問的時間差,這個時間差經(jīng)過處理可以作為時鐘休眠的時間段。如果ISS51連續(xù)進行IO訪問,就不會產(chǎn)生時鐘休眠了。DMAController工作于查詢方式,可以采用時鐘休眠技術(shù),而不會導致仿真與真實結(jié)果的不一致。
方法之三是,縮短SMARTMEDIA仿真模型中的一些長延時的時間參數(shù)。因為在等待SMARTMEDIA進入就緒狀態(tài)時,CPU必須連續(xù)查詢IO,影響仿真速度。我們主要用于軟件功能驗證,這種修改也是可以接受的。
方法之四,在軟件設(shè)計上,謹慎使用外部中斷,因為一旦中斷啟動,ISS51需要在每個機器周期查詢是否有中斷信號,導致軟件仿真和硬件仿真在每個指令上都進行同步,影響仿真速度。如果一定要使用外部中斷,建議用C模型代替Verilog模型,這樣可不影響仿真速度;或者由用戶根據(jù)外部模塊產(chǎn)生外部中斷的時機,使用ISS51的控制命令,在恰當時刻使能ISS51的中斷模塊。
在一個普通PC(CPU為AMD速龍1000,SDRM512M133),運行MiniWeb卡仿真系統(tǒng),使用PING命令測試MiniWeb卡仿真系統(tǒng)的響應(yīng)速度:
Replyfrom10.10.112.76:bytes=32time=64msTTL=128
使用IE打開MiniWeb卡仿真系統(tǒng)中的網(wǎng)頁文件,感覺和撥號上網(wǎng)的速度差不太多。創(chuàng)建多個TFTP連接,同時向仿真系統(tǒng)傳遞或下載網(wǎng)頁文件,同時使用IE進行網(wǎng)頁瀏覽,都無響應(yīng)中斷現(xiàn)象出現(xiàn)。
總結(jié)
使用軟硬件聯(lián)合仿真,MiniWeb卡不需要硬件就能進行全部功能的仿真,增強了系統(tǒng)設(shè)計成功的信心。軟硬件聯(lián)合仿真方便系統(tǒng)設(shè)計調(diào)整,可以在設(shè)計前期評估性能,方便軟件和硬件的debug,是一個值得推廣的技術(shù)。
【軟硬件配置方案設(shè)計】相關(guān)文章:
如何看電腦配置07-03
如何查看電腦配置07-03
2500左右的電腦配置07-12
3500左右的電腦配置07-12
5000元電腦配置07-12
2500元電腦配置07-12
電腦配置知識大全07-20
3500元電腦配置單07-12
我的電腦的配置如下所示07-13
普通辦公電腦配置清單03-04