<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于8086 CPU的單芯片計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

          基于8086 CPU的單芯片計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

          作者: 時(shí)間:2016-12-02 來源:網(wǎng)絡(luò) 收藏




          系統(tǒng)總線在接收到外設(shè)的中斷請(qǐng)求之后,會(huì)向CPU 提出中斷申請(qǐng),一旦接收到中斷響應(yīng),要向外設(shè)傳送中斷響應(yīng)信號(hào),同時(shí)修改譯碼單元,選通該外設(shè),保證在第二個(gè)中斷響應(yīng)期間能將中斷類型號(hào)通過總線傳送給CPU,使得CPU 能成功跳轉(zhuǎn)到中斷服務(wù)子程序。

          DMA 控制器在執(zhí)行數(shù)據(jù)傳輸時(shí),需要掌握AHB 總線的控制權(quán),向片上存儲(chǔ)器或者總線上其他外設(shè)發(fā)出地址和控制信號(hào),即相當(dāng)于AMBA 的主設(shè)備;另一方面,在DMA 控制器啟動(dòng)工作之前,CPU 需要對(duì)其進(jìn)行預(yù)處理操作,以使其按照特定的配置參數(shù)進(jìn)行工作,在這個(gè)初始化階段,CPU 是AHB 總線上的主設(shè)備,DMA 控制器屬于從設(shè)備?;贒MA控制器的這種兩面性,在總線設(shè)計(jì)中配備了專門的DMA 通道與其相匹配:CPU 正常工作時(shí),

          DMA 扮演從設(shè)備的角色,接受CPU 對(duì)其的初始化;利用HLDA 作仲裁信號(hào),當(dāng)CPU 響應(yīng)外設(shè)DMA 請(qǐng)求時(shí)(即HLDA 為高電平),讓出總線控制權(quán)給外設(shè),利用DMA 數(shù)據(jù)通道傳輸數(shù)據(jù),傳輸?shù)膮f(xié)議同樣遵從AMBA 協(xié)議。總線的時(shí)序控制模塊狀態(tài)如圖5 所示。



          3.3 存儲(chǔ)單元的接口設(shè)計(jì)

          存儲(chǔ)器子系統(tǒng)包括一個(gè)RAM 和一個(gè)ROM,8086CPU 支持20 位地址總線,具有1M 字節(jié)存儲(chǔ)空間,分為RAM 區(qū)和ROM 區(qū)。本文利用開發(fā)板的片上ROM 資源配置成16k*16 的格式作為存儲(chǔ)器中的ROM 單元,采用DE2 開發(fā)板上的8M 的SDRAM 配置成256K*16 位總線格式代替存儲(chǔ)器中的RAM 單元。

          在各種隨機(jī)存儲(chǔ)器件中,SDRAM 的價(jià)格低,體積小,速度快,容量大,是比較理想的器件。但SDRAM 的控制邏輯比較復(fù)雜,對(duì)時(shí)序要求也十分嚴(yán)格,這就要求有一個(gè)專門的控制器:控制SDRAM 的初始化,刷新和預(yù)沖以及基本的讀寫操作。同時(shí),需要匹配SDRAM控制器和8086 CPU 的讀寫時(shí)序。該接口具體實(shí)現(xiàn)的狀態(tài)機(jī)如圖6 所示。



          T1:當(dāng)RDY 為高電平時(shí),首先確定是進(jìn)行讀還是寫操作,這時(shí)DONE 為0:讀:設(shè)置WR=0,RD=1; 寫:設(shè)置WR=1,RD=0。

          T2:當(dāng)DONE 信號(hào)為高電平,表示可以進(jìn)行讀/寫操作,跳轉(zhuǎn)到T3。

          T3:CPU 通過SDRAM 控制器對(duì)SDRAM 進(jìn)行讀寫操作。

          T4:當(dāng)?shù)妥止?jié)有效信號(hào)bwl_n 為高電平時(shí),執(zhí)行低字節(jié)傳輸。

          T5:當(dāng)高字節(jié)有效信號(hào)bwh_n 為高電平時(shí),執(zhí)行高字節(jié)傳輸。

          T6:CPU 完成讀寫操作,相關(guān)控制信號(hào)清零。

          其中,DONE 信號(hào)用于指示是否讀寫完成,只有DONE 為高電平時(shí)表示讀寫完成,才能進(jìn)行下次讀寫操作。RDY 信號(hào)表示SDRAM 是否做好準(zhǔn)備接受CPU 的訪問,由SDRAM的寫請(qǐng)求信號(hào)(IN_REQ =1)和讀有效信號(hào)(OUT_VALID =1 )共同控制,其產(chǎn)生過程偽碼如表5 所示。



          根據(jù)單芯片計(jì)算機(jī)系統(tǒng)級(jí)設(shè)計(jì)的組成結(jié)構(gòu),調(diào)用已經(jīng)編寫完成的8086 IP 軟核、8255 IP軟核、SDRAM 控制器、SDRAM 模型IS42S16400、AHB 總線 IP 軟核以及譯碼器IP 軟核。

          連接相應(yīng)的輸入輸出端口,同時(shí)對(duì)8086 相關(guān)的輸入端口進(jìn)行賦值,將未使用的輸出端口懸空,完成單芯片計(jì)算機(jī)系統(tǒng)的RTL 級(jí)設(shè)計(jì)。

          4 單芯片計(jì)算機(jī)系統(tǒng)的仿真與驗(yàn)證

          單芯片計(jì)算機(jī)的RTL 級(jí)設(shè)計(jì)只是全部設(shè)計(jì)流程的一部分,為保證最終設(shè)計(jì)的成功,必須對(duì)其進(jìn)行全面的軟件仿真與硬件驗(yàn)證,包括搭建測(cè)試平臺(tái),設(shè)計(jì)測(cè)試方案以及分析仿真結(jié)果,實(shí)現(xiàn)FPGA 驗(yàn)證。

          4.1 測(cè)試方案的設(shè)計(jì)

          在包含8255 應(yīng)用電路的單芯片計(jì)算機(jī)系統(tǒng)搭建完成的基礎(chǔ)上,要求實(shí)現(xiàn)八個(gè)開關(guān)量控制八個(gè)LED燈亮滅的功能。將八個(gè)開關(guān)量連接8255 的PA0~PA7;將八個(gè)LED 燈驅(qū)動(dòng)電路連接8255 的PC0~PC7。在8086 CPU 的控制下,通過總線讀取連接在8255 PA 口的八個(gè)開關(guān)量,將開關(guān)值送往SDRAM 存儲(chǔ),再?gòu)腟DRAM 讀取開關(guān)量發(fā)送到8255 PC 口,使其驅(qū)動(dòng)八個(gè)LED 燈的亮或滅。

          4.2 仿真結(jié)果分析

          單芯片計(jì)算機(jī)最小集的RTL 級(jí)仿真波形,如圖7 所示。在8086 CPU 的控制下,8255接口讀取連接在8255 PA 口的八個(gè)開關(guān)量11000010 以后,將其發(fā)送到8255 的PC 口,驅(qū)動(dòng)輸出邏輯值11000010。



          使用QuartusII 軟件成功編譯設(shè)計(jì),將布局布線生成的結(jié)果下載到FPGA 中,得到與設(shè)計(jì)等效的實(shí)際電路,對(duì)實(shí)際的電路用測(cè)試系統(tǒng)進(jìn)行測(cè)試,從而驗(yàn)證設(shè)計(jì)的正確性。將FPGA的驗(yàn)證結(jié)果經(jīng)邏輯分析儀讀取顯示,如圖8 所示。



          5 結(jié)束語(yǔ)

          本論文在基于集成電路設(shè)計(jì)方法學(xué)的指導(dǎo)下,探討了一種基于8086 CPU 核的單芯片計(jì)算機(jī)平臺(tái)的架構(gòu),研究了其與AMBA 總線、SDRAM、8255 等外圍IP 的集成。在此基礎(chǔ)上,設(shè)計(jì)基于8086 IP 軟核的單芯片計(jì)算機(jī)系統(tǒng),并實(shí)現(xiàn)了FPGA 功能演示。在后續(xù)的工作中,將考慮進(jìn)一步擴(kuò)展CPU 外圍接口IP 軟核;集成DMA 控制器,實(shí)現(xiàn)VGA 顯示功能;將DOS 操作系統(tǒng)加入8086 單芯片計(jì)算機(jī)平臺(tái),并開發(fā)在操作系統(tǒng)下的設(shè)備驅(qū)動(dòng)程序和應(yīng)用軟件。

          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();