<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 基于FPGA的8085A CPU結構分析與實(shí)現

基于FPGA的8085A CPU結構分析與實(shí)現

作者: 時(shí)間:2011-01-19 來(lái)源:網(wǎng)絡(luò ) 收藏

1 引 言

微型計算機原理幾乎是所有理工科類(lèi)大學(xué)生的必修課目之一, 其重要性不言而喻。然而大多數教學(xué)側重于應用方面, 對計算機的結構及工作原理涉之不深, 因為無(wú)法做一個(gè) 來(lái)演示。這樣學(xué)生不能真正了解其性能特點(diǎn), 掌握內部結構, 在學(xué)習匯編語(yǔ)言的時(shí)候增加了難度, 影響學(xué)習興趣。隨著(zhù)可編程邏輯器件的廣泛應用, 給數字系統的設計帶來(lái)了極大的靈活性, 用戶(hù)可以利用現場(chǎng)可編程門(mén)陣列 來(lái)開(kāi)發(fā)出一個(gè)適合自己的專(zhuān)用, 對微型計算機的原理及結構進(jìn)行充分理解與研究, 便于將來(lái)從事相關(guān)ASIC設計, 開(kāi)發(fā)出創(chuàng )新型的產(chǎn)品, 為我國計算機發(fā)展做貢獻。

現場(chǎng)可編程門(mén)陣列 門(mén)數眾多, 人們可以將合適的IP軟核或其他形式的核作為嵌入式模塊裝在自己的設計中。但通常IP軟核需要門(mén)數較多的 器件支持, 作為學(xué)習來(lái)說(shuō)的FPGA 芯片往往資源有限, 需要節約FPGA 的成本與面積; 并且沒(méi)必要實(shí)現所有功能, 只要做出關(guān)鍵部分及重要結構,明白其運行機理, 又能與真實(shí)的 緊密相聯(lián)即可。實(shí)驗箱上采用的FPGA 芯片為A ltera 公司的EPF10K20TC144- 4。這里以Inte l的 為例來(lái)說(shuō)明8位計算機的工作原理。

2 CPU 設計及實(shí)現

2. 1 FPGA 芯片及外圍電路簡(jiǎn)介

A ltera的FLEX10K 器件是工業(yè)界首例嵌入式PLD, 基于可重配置CMOS SRAM 元件。EPF10K20帶有144個(gè)LAB (邏輯陣列塊) 和1152 個(gè)邏輯單元, 最大I/O數目為189。另外, 芯片中嵌入式陳列塊( EAB)有6個(gè), 其RAM 總位數為12288。

實(shí)驗涉及到FPGA 芯片的外圍部分包括控制開(kāi)關(guān)、2* 8鍵盤(pán)輸入、6個(gè)數碼管輸出、8個(gè)輸入端口、8個(gè)輸出端口及2個(gè)中斷開(kāi)關(guān)等。主要用來(lái)增添程序設計的靈活性及形象性, 使其可現場(chǎng)調試, 驗證結果, 避免單純用軟件仿真的不足。外圍電路控制模塊及結構可參見(jiàn)文獻[ 1] 。

現場(chǎng)調試時(shí)可以通過(guò)控制開(kāi)關(guān), 手動(dòng)從鍵盤(pán)輸入相應的地址及數據(通過(guò)數碼管顯示), 輸錯可以修改; 用寫(xiě)使能開(kāi)關(guān)給RAM 寫(xiě)入相應程序。當輸入完所有程序后, 按下運行開(kāi)關(guān)即可執行程序, 在數碼管上顯示地址、數據及最終結果??刂崎_(kāi)關(guān)用于配合鍵盤(pán)通過(guò)手動(dòng)方式輸入程序, 可以形象化的現場(chǎng)編程。在軟件下載后不使用計算機, 通過(guò)按鈕、鍵盤(pán)就能將程序輸入到RAM 中, 然后運行, 顯示出結果。

2. 2 CPU模塊

2. 2. 1 內部結構

CPU 模塊的內部結構如圖1所示。微型計算機由下面幾個(gè)部分組成: 8位通用寄存器H、L, 16位程序計數器( PC ) , 16位堆棧指示器( SP), 一個(gè)加1 /減1 地址鎖存器( ADD /ADR ), 8 位NL 寄存器( NL) , 8位中斷時(shí)間寄存器( T IMER ) ; 算術(shù)邏輯單元(ALU ), 累加器(A ), 標志寄存器( FR ), 數據選擇器( SEL) ; 指令寄存器( IR) , 控制器( CON ) , 4選1多路選擇器(MUX) , 存儲地址寄存器(MAR ) , 8 位數據寄存器(MDR) ; 輸入數據寄存器( INDT ), 輸出數據寄存器( OUTDT )等部分組成。其中標志寄存器有4位, 分別是: 進(jìn)位位( Cy)、零位( Z)、符號位( S)、奇偶位( P) , 微機通過(guò)檢測這些標志位的1位或多位來(lái)判斷程序是否需要轉移。

微型計算機CPU 結構圖
微型計算機CPU 結構圖
圖1 微型計算機CPU 結構圖

圖中字母L為數據載入控制信號, E 為三態(tài)輸出選通信號, clk為時(shí)鐘信號, c lr為清零信號, W 為數據載入PC信號, Cpc為控制PC 加1信號, S3- S0為控制ALU 進(jìn)行加減、邏輯運算或移位運算的選擇信號, Iadr、Dadr為加1 /減1地址鎖存器加1減1控制信號, Isp、Dsp為堆棧指示器的加1減1 控制信號, E ram、W ram 為讀寫(xiě)RAM 控制信號。另外, 累加器(A ) , 標志寄存器( FR )增加了專(zhuān)用的清零信號。

所有的控制、時(shí)鐘及清零信號由控制器( CON)模塊給出, 而CON 模塊由外部時(shí)鐘clkin、清零信號rst及使能信號enable 控制。存儲地址寄存器(MAR )用來(lái)給RAM輸送地址, 從RAM 讀指令和數據, 也可以給RAM寫(xiě)數據。


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

關(guān)鍵詞: 8085A FPGA CPU 結構分析

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>