32位微機原理與接口技術(shù)實驗系統(tǒng)-CPLD電路設(shè)計與制作論文_第1頁
32位微機原理與接口技術(shù)實驗系統(tǒng)-CPLD電路設(shè)計與制作論文_第2頁
32位微機原理與接口技術(shù)實驗系統(tǒng)-CPLD電路設(shè)計與制作論文_第3頁
32位微機原理與接口技術(shù)實驗系統(tǒng)-CPLD電路設(shè)計與制作論文_第4頁
32位微機原理與接口技術(shù)實驗系統(tǒng)-CPLD電路設(shè)計與制作論文_第5頁
已閱讀5頁,還剩39頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

江蘇大學(xué)本科學(xué)位論文 -1- “ 32 位微機原理與接口技術(shù)”實驗系統(tǒng) CPLD 電路設(shè)計與制作 學(xué)院: 計算機科學(xué)與通信工程 班級: 通信 002 學(xué)號: 學(xué)生姓名: 指導(dǎo)老師: 2004 年 6 月 9 日 江蘇大學(xué)本科學(xué)位論文 -1- 摘 要 “微機原理與接口技術(shù)”是 一門實踐性 較 強的課程 ,要學(xué)好該課程 必須 與配套的教學(xué)實驗相結(jié)合,這樣才能鞏固和加強對書本知識的認(rèn)識和理解。目前, 32 位微機原理與接口技術(shù)配套的實驗系統(tǒng)功能不強,與微機的快速發(fā)展不配套。因此,急需研制開發(fā)一套操作簡便、功能齊全、結(jié)構(gòu)簡單的“ 32 位微機原理與接口技術(shù) ”實驗系統(tǒng)。本文首先對 CPLD 進行研究與分析,在此基礎(chǔ)上將原有的中小規(guī)模器件集成到 CPLD中,達(dá)到了簡化電路,減小成本的目的。經(jīng)過研制開發(fā),已經(jīng)成功應(yīng)用于 ISA 總線的接口電路中。 關(guān)鍵詞: 芯片解密 , ADD-ON總線 ,邏輯電路設(shè)計,時序分析 江蘇大學(xué)本科學(xué)位論文 -2- ABSTRACT “Microcomputer principle and interface technology” is a course which needs practices.to learn the course well,it must integrate with the experiment going with the course.In this way,it can strengthen the understanding of the knowledge in book.Presently,the function of the experiment system going with the32-bit microcomputer principle and interface technology is not strong enough,and not fits the fast development of the microcomputer.So ,it is necessary to develop a experiment system which provides easy operation,full functions and brief structure for the 32-bit microcomputer principle and interface technology.Firstly ,the paper analyze the CPLD.Then ,it integrate the mid-mini scale circuit into the CPLD.Thereby,it predigests the circuit and reduces the cost.through the design ,it has already been successfully applied in the interface circuit of ISA bus. KEY WORDS: Chip-Decoding,ADD-ON-bus,Logic-Circuit Designing Scheduling Analysis 江蘇大學(xué)本科學(xué)位論文 -3- 目 錄 第一章 緒論 1 1.1 背景 .1 1.1.1 微機系統(tǒng)結(jié)構(gòu)的發(fā)展變化 1 1.1.2 基于 PCI/XT 總線的微機結(jié)構(gòu) .2 1.1.3 基于 PC AT/ISA 總線的微機 結(jié)構(gòu) 2 1.1.4 基于南北橋結(jié)構(gòu) /中心結(jié)構(gòu)的微機系統(tǒng) .2 1.2 開發(fā) 32位微機實驗系統(tǒng)的目的 3 1.2.1 基本接口原理及常用接口芯片 . .3 1.2.2 PCI 總線的應(yīng)用與擴展 .4 1.3 論文的內(nèi)容結(jié)構(gòu) .4 第二章 32位微機實驗系統(tǒng)的研究 .5 2.1 32微機實驗系 統(tǒng)的功能 .5 2.2 32微機實驗系統(tǒng)的結(jié)構(gòu) .5 2.2.1 實驗箱單元結(jié)構(gòu)及其功能 .5 2.2.2 PCI 總線擴展卡單元結(jié)構(gòu)及其功能 .7 2.3 32 位微機實驗系統(tǒng)的三種總線 .7 2.3.1 PCI 總線接口信號概述 .7 2.3.2 ADD-ON總線接口 信號概述 .9 2.3.3 ISA 部分仿真信號概述 .11 第三章 AMCC S5933芯片的應(yīng)用 13 3.1 PCI 配置空間和基地址寄存器的使用 13 3.2 AMCC S5933 總線控制器 .14 3. 3 AMCC S5933 各接口描述 .15 第四章 ATF1504 芯 片的研究 . 19 4.1 ATF1504 芯片的接口和功能研究 . . .19 4.1.1 芯片概述 19 江蘇大學(xué)本科學(xué)位論文 -4- 4.1.2 ATF1504 各功能模塊的描述 19 4.2 ATF1504 邏輯塊的分析及引腳分布 .21 第五章 ATF1504 芯片的解密與電路邏輯編程實現(xiàn) . 23 5.1 ATF1504 解密的前期準(zhǔn)備工作 .23 5.2 Pass-Thru 區(qū)域訪問的深入研究 .25 5.3 ATF1504 輸入輸出引腳的類型鑒定 .27 5.4 使用 MAX+PLUS II 軟件和 VHDL 語言編程實現(xiàn) 電路邏輯 .29 5.5 VHDL源程序 .29 第六章 結(jié)論與展望 34 6.1 結(jié)論 .34 6.2 下一步的工作 .34 參考文獻 .35 致 謝 .36 附 錄 .37 江蘇大學(xué)本科學(xué)位論文 -1- 第一章 緒 論 1.1 背 景 科學(xué)技術(shù)的發(fā)展 ,將微機的應(yīng)用帶入各個領(lǐng)域 ,于是掌握微機系 統(tǒng)知識及微機接口技術(shù)就顯得尤為重要??v觀微機的發(fā)展 ,無論是微處理器、微機接口還是微機操作平臺 ,都發(fā)生了巨大的變化。 PC 微機的發(fā)展過程中 ,無論是微處理器還是微機的系統(tǒng)機構(gòu)始終都保持著向上兼容性。從 1PC/XT總線結(jié)構(gòu)開始 ,系統(tǒng)總線不斷升級 ,相繼出現(xiàn)了 ISA總線、EISA 總線、 MCA(微通道結(jié)構(gòu) )總線、 VESA 局部總線、 PCI 局部總線和 AGP 接口 ,微機的整體處理速度和可靠性得到了提高的。本節(jié)將簡要介紹微機發(fā)展中幾種主要的微機系統(tǒng)結(jié)構(gòu)。但我們設(shè)計的這套系統(tǒng)使用了 ADD ON 總線來實現(xiàn)PCI 總線的轉(zhuǎn)換, 其中使用了 AMCC S5933 的總線控制芯片。本章首先對微機的發(fā)展變化及微機系統(tǒng)結(jié)構(gòu)變化作一簡要介紹。 1.1.1 微機系統(tǒng)結(jié)構(gòu)的發(fā)展變化 微機的發(fā)展變化主要體現(xiàn)在兩個方面 :第一方面屬于微處理器的發(fā)展變化 ,第二方面屬于微機體系結(jié)構(gòu)及微機操作平臺的發(fā)展變化。微處理器作為微機中的核心部件 ,從早期的 8088,發(fā)展到 16 位的 8086,32 位的 80386,及奔騰系列 ,已經(jīng)歷了6 代的變化 (現(xiàn)在 INTEL 公司還推出了 64 位的 Itanium)。從 80386 開始的 32 位80X86系列 CPU提出了實模式、保護模式及虛擬 86模 式三種工作模式的概念 :在實模式下 ,CPU 相當(dāng)于一個可以進行 32 位處理的快速 8086; 在保護模式下 ,CPU的工作原理和機制與 16 位處理器的工作原理及機制產(chǎn)生了本質(zhì)的不同 :它采用了新的應(yīng)用數(shù)據(jù)結(jié)構(gòu)、虛擬存儲管理方案、新的中斷 /異常處理機制并從硬件上支持了多任務(wù) ,目前微機主流操作系統(tǒng) (如 Windows 9x)都是基于 CPU 的保護模式來工作的。而虛擬 86 模式 ,是保護模式下一個可以仿真 8086 的任務(wù)。我們現(xiàn)在做的這個系統(tǒng):使用 ISA 總線的低級接口部分是實模式下的 ;使用 ADD ON 總線的高級接口部分是保護模式下的。在 微處理器發(fā)展的同時 ,微機體系機構(gòu)也從早期 CPU 總線直接與外設(shè)相連發(fā)展到現(xiàn)在采用的多級總線結(jié)構(gòu) ,PC 微機的外圍總線也由低速總線發(fā)展到以 PCI 總線為主的高速總線 ,于是外圍高速設(shè)備得到越來越廣泛的使用 ,社會對接口應(yīng)用開發(fā)人員掌握的軟硬件知識及具備的軟硬件開發(fā)能力提出了更高的要求。而微機操作平臺方面 ,Windows 9x操作系統(tǒng)已經(jīng)成為 PC微機操作系統(tǒng)的主流 ,由于 Windows 是基于 CPU 保護模式工作的 ,它與在 16 位操作系統(tǒng)時代的 DOS、 Windows 3.1 有所不同。如 ,在以往的操作系統(tǒng)上 ,用戶程序可以通過直接 調(diào)用 BIOS或者 DOS功能調(diào)用實現(xiàn)對硬件的訪問操作。而 32位操作系統(tǒng) Windows9x,在 CPU保護模式的支持下 ,對系統(tǒng)核心程序及系統(tǒng)硬件操作采取了屏蔽的策略 ,若要實現(xiàn)對硬件中斷、 DMA、 I/O 或者是絕對存儲訪問 ,都必須通江蘇大學(xué)本科學(xué)位論文 -2- 過設(shè)備驅(qū)動程序。這使得系統(tǒng)變得更安全 ,也使得在 Windows 上從事核心軟件開發(fā)及硬件控制對一般程序員變得非常困難。而我們現(xiàn)在做的這個系統(tǒng)不僅有基本的對于硬件系統(tǒng)的操作和訪問(如調(diào)用 BIOS 功能),也有通過擴展硬件設(shè)備來模擬實模式下的對基本硬件設(shè)備的訪問(如實現(xiàn)對硬件中斷、 DMA、 I/O 和存 儲器的訪問)。 1.1.2 基于 PCI/XT 總線的微機結(jié)構(gòu) 在采用 8088作為處理器的第一代通用微型計算機中 ,系統(tǒng)中的所有其他部件直接與處理器相連 ,處理器作為系統(tǒng)核心 ,通過 PC 總線對系統(tǒng)中的其他部件進行控制及數(shù)據(jù)交換。這種 PC 總線稱為 XT 總線 2,它采用了 8 位數(shù)據(jù)總線和 20 位地址總線 ,以 CPU時鐘作為總線時鐘 ,可支持 4通道 DMA和 8級硬件中斷。 1.1.3 基于 PC AT/ISA 總線的微機結(jié)構(gòu) 1984年 IBM公司公布了 PC/AT系統(tǒng)總線結(jié)構(gòu) ,系統(tǒng)中采用了 80286 微處理器和 80287 協(xié)處理器。 PC/AT 支持與 PC/XT 兼容的結(jié)構(gòu) ,且性能比 PC/XT 增強了許多。后來 Intel公司聯(lián)合其他幾家微處理器生產(chǎn)廠家推出了一個公開的總線標(biāo)準(zhǔn)稱為 ISA總線規(guī)范 ,它支持了 24為地址線、 16位數(shù)據(jù)線、 15級硬件中斷和 7個 DMA通道。其結(jié)構(gòu)示意如圖 1-2-2示。其中 PC AT/ISA核心邏輯芯片組中可以實現(xiàn) 7個 DMA通道、 15級中斷、時間 /計數(shù)器、總線緩沖器、擴展總線控制等。 1.1.4 基于南北橋結(jié)構(gòu) /中心結(jié)構(gòu)的微機系統(tǒng) 隨著微處理器和操作系統(tǒng)的變化 ,用戶對微機處理的高速性提出新的要求 ,為了提高處理器與各部件 及部件與部件間傳輸信息的整體效率 ,微機系統(tǒng)中采用了十分明確的總線分級結(jié)構(gòu) ,即 CPU總線、局部總線 (PCI總線 3)、系統(tǒng)總線結(jié)構(gòu)。連接各級總線的是一些高集成度的多功能橋路芯片 ,它們可以起到信號速度、電平轉(zhuǎn)換和控制協(xié)議轉(zhuǎn)換的作用。按照芯片組功能和連接方法的劃分 ,該結(jié)構(gòu)可以分成南北橋結(jié)構(gòu)和中心結(jié)構(gòu)。 在南北橋結(jié)構(gòu)中 ,各級總線主要通過兩片橋芯片進行連接。一片稱作北橋的用于連接 CPU總線和 PCI總線 ,另一片稱作南橋 ,用于連接 PCI總線和系統(tǒng)總線。常用的芯片組有 Intel 公司的 440 系列 ,如 440BX,其南橋芯片 為 82371EB,集成了 PCI-ISA連接器、 IDE控制器、 USB控制器、 2個增強型 DMA控制器、 2個 8259中斷控制器、 8253/8254 定時時數(shù)器、電源管理邏輯和可選的 I/O APIC 等。這種總線結(jié)構(gòu)可以使高速外圍設(shè)備通過 PCI 插槽直接與 PCI 相連 ,適應(yīng)當(dāng)前高速外設(shè)與微處理器連接的需求。 在中心機構(gòu)的微機中 ,芯片組由 3 個芯片組成 :存儲控制中心 MCH、 I/O 控制中心 ICH 和固件中心 FWH。 MCH 用于提供高速 AGP 接口、動態(tài)顯示管理、電源管理和內(nèi)存管理功能。 ICH 提供了音頻編碼和調(diào)制解調(diào)器編碼接口、 IDE 控制器、江蘇大學(xué)本科學(xué)位論文 -3- USB接口、局域網(wǎng)絡(luò)接口 ,并與 PCI總線及其插槽連接在一起。 ICH還和 SuperI/O控制器相連 ,而 SuperI/O 主要為系統(tǒng)中的慢速設(shè)備如串口、并口、鍵盤、鼠標(biāo)等 ,提供與系統(tǒng)通信的數(shù)據(jù)交換接口。固件中心包含了主板 BIOS.顯示 BIOS和可用于數(shù)字加密、安全認(rèn)證等領(lǐng)域的硬件隨機數(shù)產(chǎn)生器。 1.2 開發(fā) 32 位微機實驗系統(tǒng)的目的 隨著微機在各個領(lǐng)域,特別是計算機在與外部設(shè)備的通信中的廣泛使用,微機接口技術(shù)便成為了非常重要的課題之一。通過設(shè)計各種接口,就可以實現(xiàn) CPU與外部擴展存儲器, I/O設(shè)備 ,控制,測量,通信等設(shè)備的信息交互,學(xué)習(xí)微機接口技術(shù)對微機在這些工業(yè)領(lǐng)域中的廣泛運用便顯得尤為重要。與之相適應(yīng)的高校的微機接口教學(xué)實驗對于能給學(xué)生提供良好實驗功能的實驗設(shè)備的需求變的日益迫切。為此我們開發(fā)了這套實驗系統(tǒng),以滿足高校進行教學(xué)實驗的要求。 1.2.1 基本接口原理及常用接口芯片 針對 PC 微機的結(jié)構(gòu),我們將系統(tǒng)設(shè)計為低級接口部分和高級接口部分。低級接口圍繞 8253/8254 定時 /計數(shù)控制器、 8259 中斷控制器、 DMA 直接存儲器訪問控制器 ,8250/16550 串行接口芯片、 8255 并行接口芯片等芯 片的編程和操作;高級接口 主要圍繞著 PCI 總線技術(shù)及其應(yīng)用 ,包括硬件接口設(shè)計和軟件設(shè)計,其中使用 AMCCS5933 來實現(xiàn)總線轉(zhuǎn)換。 隨著芯片制作工藝的飛速發(fā)展,芯片組已經(jīng)高度集成化。低速的外圍設(shè)備需要通過橋芯片或?qū)S每刂破鞑拍苓B接到更高一級的速度的總線上,而 8254定時 /計數(shù)器、 8259 控制器、 DMA控制器等控制芯片也都已經(jīng)集成到橋芯片當(dāng)中 ,而且這種硬件連接都已經(jīng)固定 ,大部分硬件資源被系統(tǒng)分配給特定應(yīng)用 ,操作系統(tǒng)本身還要對硬件進行直接的管理。而一些常用的芯片例如 A/D D/A 轉(zhuǎn)換、存儲器等微機內(nèi)并沒有提供接口 , 更沒有辦法進行實驗。這對我們的教學(xué)和實驗無疑帶來了很大的局限。 為了解決基于 PC 微機進行實驗教學(xué)帶來的各種局限和不便 ,利用總線擴展的方法將微機內(nèi)部部分硬件資源引出 ,并通過一定的控制邏輯提供可以在 PC 機外部連接使用常用接口芯片的信號 ,讓學(xué)生實踐接口連接和芯片編程 ,就是一種可行的方法。這也是我們現(xiàn)在所采用的方式。由于 ISA總線已經(jīng)被淘汰 ,PC微機提供的總線接口主要是 PCI擴展插槽 ,所以需要從 PCI總線擴展出仿真 ISA接口 ,提供部分仿真 ISA 總線信號 ,將各種常用接口芯片及典型應(yīng)用掛接在該接口上。但由于 PCI 總線支持了總線主控方式、其中斷功能也區(qū)別于 ISA,在 PCI 總線上不推薦使用 8237DMA 控制器和 8259中斷控制器。有關(guān) 8237 DMA控制器和 8259中斷控制器的學(xué)習(xí) ,只能基于 PC微機本身實現(xiàn)一些特定操作。 綜上所述 ,32 位微機接口技術(shù)的基本教學(xué)可以從兩個方面來實現(xiàn) ,一方面是以 PC 微機為平臺 ,操作 PC 微機內(nèi)部資源 ,包括對系統(tǒng) 8259、 8237、鍵盤、鼠標(biāo)江蘇大學(xué)本科學(xué)位論文 -4- 等的操作應(yīng)用。另一方面是以 PC微機為平臺 ,通過 PCI總線擴展出低速總線接口信號 ,掛接一些常用接口芯片及典型應(yīng)用 ,學(xué)習(xí)其基本編程與應(yīng)用 ,包括 8254、8255、 8250/16550、 A/D、 D/A和微機控制應(yīng)用等。 1.2.2 PCI 總線的應(yīng)用與擴展 PCI 總線的原理是為了改善 PC 數(shù)據(jù)輸入 /輸出的瓶頸問題 ,從而提高系統(tǒng)運行的速度和擴展能力、 PCI 總線將 I/O 總線上的高速外圍設(shè)備移出 ,并將這些設(shè)備放置到一個離系統(tǒng)總線更近的地方 ,使得這些外圍設(shè)備可以和處理器以更快的速度交換數(shù)據(jù)。隨著 PCI 線的廣泛應(yīng)用 ,學(xué)習(xí)基于 PCI 總線接口的應(yīng)用開發(fā)變得越來越重要。由于 PCI 總線規(guī)范十分復(fù)雜 ,直接針對 PCI 接口進行開發(fā)設(shè)計具有較大的難度。目前廣泛采用的基于 PCI總線的開 發(fā)有兩種 ;一種是使用 PLD器件 ,另一種是使用 PCI 總線的控制芯片 ,如 AMCC 的 559333,PLX 的 PC19054 等。直接使用 PLD 器件 ,開發(fā)難度大 ,費時費力 ,不適用于教學(xué) ,而總線控制芯片完成了PCI協(xié)議的轉(zhuǎn)換 ,為用戶提供了一個簡化的 PCI總線 ,只需要學(xué)習(xí)控制芯片提供的簡化的規(guī)范就可以完成 PCI 總線應(yīng)用的開發(fā)設(shè)計 ,是一種簡便快捷的方法。由于現(xiàn)代接口邏輯設(shè)計追求高集成度、低功耗等特性 ,將多種功能集成到一個芯片中 ,在學(xué)習(xí)外設(shè)與控制芯片連接部分可以使用 CPLD器件如 Lattice的 ispLSI系列 ,可以大大 提高實驗的效率和準(zhǔn)確性。 1.3 論文的內(nèi)容結(jié)構(gòu) 本篇論文分為四章,第一章是緒論,主要講述了微機系統(tǒng)結(jié)構(gòu)的變化以及各種總線的演變,開發(fā)實驗系統(tǒng)的目的。第二章主要是對實驗系統(tǒng)各個單元模塊的分析,在此基礎(chǔ)上畫出原理圖以及 PCB圖,并由此最終制作出實用電路板。在這章中對 PCI總線, ADD ON總線以及仿真的 ISA信號做了具體的描述,這幾種總線結(jié)構(gòu)都將在系統(tǒng)中使用到。第三章對 AMCC S5933 和 ATF1504 芯片做了研究和描述,這一章是很重要的。 AMCC S5933 是總線控制芯片,借助于它我們實現(xiàn)了PCI總線轉(zhuǎn)換 到 ADD ON總線,而利用可編程的 ATF1504芯片,將一部分電路邏輯寫入 ATF1504并加密,實現(xiàn)了技術(shù)保密,而現(xiàn)在的工作是把加密的電路邏輯重新描述出來。要做好這個工作就必須詳細(xì)了解這兩種芯片的結(jié)構(gòu)和功能。第四章是論文的主要部分,它將掌握的所有資料進行綜合分析,得出大體的邏輯描述。我使用 VHDL語言將邏輯功能實現(xiàn),并在 MAX PLUS II環(huán)境下編寫源程序,編譯,分配引腳,并進行仿真,最后通過編程器下載到 ATF1504進行調(diào)試。本文最后有VHDL源程序和附錄。 江蘇大學(xué)本科學(xué)位論文 -5- 第二章 32 位微機實驗系統(tǒng)的結(jié)構(gòu)分析與 研究 系統(tǒng)為 32 位微機原理和微機接口技術(shù)應(yīng)用分別提供了實驗于臺。 32 位微機原理部分實驗平臺由一組支持在 80386、奔騰及其以上 PC 微機上的編程及調(diào)試工具組成。微機接口應(yīng)用部分 ,系統(tǒng)提供了硬件實驗平臺 ,并將實驗分為基本接口和高級接口應(yīng)用兩部分。對于基本接口應(yīng)用學(xué)習(xí),系統(tǒng)經(jīng) PCI總線擴展卡及轉(zhuǎn)接邏輯為用戶提供了一個仿真 ISA 接口 ,用戶可以基于該接口學(xué)習(xí)常用接口芯片的編程及應(yīng)用 ; 對高級按口部分的學(xué)習(xí) ,實驗系統(tǒng)提供了全開放的簡化 PCI 總線接口 -ADD-ON總線接口及 CPLD實驗單元 ,使用戶可以直接對 PCI總線完 成特定應(yīng)用需要的接口設(shè)計,和 PCI總線應(yīng)用擴展實例。 32微機實驗系統(tǒng)使用了三種總線:PCI BUS(見附錄 1), ADD ON BUS(見附錄 3)以及 ISA BUS的部分信號。通過AMCC S5933實現(xiàn) PCI 到 ADD ON的轉(zhuǎn)換并通過邏輯組合提供 ISA的部分信號。 2.1 32 微機實驗系統(tǒng)的功能 1. 完善的基本微機接口技術(shù)實驗教學(xué)平臺 系統(tǒng)以 PC 微機為主機 ,通過 PCI 總線擴展卡將 PCI 總線信號經(jīng)擴展卡上的PCI 總線控制芯片進行轉(zhuǎn)換 ,轉(zhuǎn)換成 ADD-ON 總線信號引入接口實驗平臺 ,再經(jīng)過邏輯轉(zhuǎn)換而形成仿真 ISA總線接口 ,供作基本接口實驗使用。在接口實驗單元中 ,系統(tǒng)提供了各種常用外圍接口及其控制應(yīng)用部件 ,如定時 /計數(shù)器 8254、并口 8255、串口 16550、靜態(tài)存貯器 6264、閃存 29256、 AD574、 DA0832、鍵盤輸入及 LED顯示、二進制開關(guān)輸入及發(fā)光管顯示、電機及溫度控制單元電路。 2. 可支持 PCI總線擴展開發(fā)的高級接口技術(shù)實驗平臺 系統(tǒng)以 PC 微機為主機 ,通過 PCI總線擴展卡將 PCI總線信號經(jīng)擴展卡上的 PCI總線控制芯片進行轉(zhuǎn)換 ,轉(zhuǎn)換成 ADD-ON總線信號引入接口實驗平臺 ,并提供 CPLD應(yīng)用開發(fā)單元 ,使用戶可以進行各種硬件接口邏輯的設(shè)計 ,由此進行 PCI 總線擴展應(yīng)用實驗及 PCI 總線的擴展應(yīng)用開發(fā)。 3. 系統(tǒng)提供了 FLASH閃存 ,體現(xiàn)先進存貯技術(shù)。 2.2 32 微機實驗系統(tǒng)的單元結(jié)構(gòu) 2.2.1 實驗箱單元結(jié)構(gòu)及其功能 1. ADD-ON總線單元 (ADD-ON BUS UNIT) 提供所有的 ADD-ON總線信號。以供進行高級接口實驗所需。 2. 仿真 ISA接口單元 (SIMULATION ISA INTERFACE) 該單元提供的仿真 ISA接口信號,用于進行低級接口實驗 。 3. 8254定時 /計數(shù)器實驗單元( 8254 UNIT) 主要芯片: 8254 定時 /計數(shù)芯片 江蘇大學(xué)本科學(xué)位論文 -6- 主要實驗: 1. 計數(shù)應(yīng)用實驗 2.定時應(yīng)用實驗 3.電子發(fā)聲裝置 4. 8255并行接口實驗單元( 8255 UNIT) 主要芯片: 8255 并行口芯片 主要實驗: 1. 基本輸入輸出實驗 2.流水燈顯示實驗 3.鍵盤及顯示實驗 5. 16550串行接口實驗單元( 16550 UNIT) 主要芯片: 一片 16550串口芯片,并配有標(biāo)準(zhǔn) RS232C串行通信接口 主要實驗: 1.串行通信基礎(chǔ)實驗 2.串口自發(fā)自收應(yīng)用實驗 3.與 PC串口通信應(yīng)用實驗 4.串口雙機通信應(yīng)用實驗 6. 574 A/D轉(zhuǎn)換實驗單元( ADC UNIT) 主要芯片: ADC574 芯片及其電位器電路 主要實驗: A/D 轉(zhuǎn)換實驗 7. 0832 D/A轉(zhuǎn)換實驗單元( DAC UNIT) 主要芯片: DAC0836 芯片和 LM324芯片 主要實驗: D/A 轉(zhuǎn)換實驗 8. 鍵盤及 LED 顯示實驗單元電路( LED KEYBOARD UNIT) 主要構(gòu)成: 由 4個共陰數(shù)碼塊、 2行 4列鍵盤和 LED 驅(qū)動器電路構(gòu)成 主要實驗 : PCI 中斷應(yīng)用實驗 9. 靜態(tài)存儲單元( SRAM UNIT) 主要芯片: SRAM6264 芯片 主要實驗: 靜態(tài)存儲器擴展實驗 10. FLASH ROM 存儲單元( FLASH ROM UNIT) 主要芯片: FLASH ROM 29C256 主要實驗: FLASH ROM 擴展實驗 11. 電子發(fā)聲實驗單元( SPEAK UNIT) 主要構(gòu)成: 由一只蜂鳴器和驅(qū)動電路構(gòu)成 12. 電機控制實驗單元( MOTOR UNIT) 主要構(gòu)成: 由 ULN2803電機接口芯片、一臺四相八拍步進電機、一臺 DC12V直流電機及霍爾測速電路構(gòu)成。 主要實驗: 1. 步進電機實驗 2.計算機綜合控制應(yīng)用實驗 13. 微型溫度控制單元 主要構(gòu)成:由 7810芯片產(chǎn)生 10V的穩(wěn)定電壓和一個 51歐的電阻構(gòu)成 回路。 14. CPLD單元 (PLD UNIT) 主要芯片: LATTICE ispLSI1032 江蘇大學(xué)本科學(xué)位論文 -7- 主要實驗: 1. 訪問 S5933操作寄存器實驗 2.郵箱應(yīng)用實驗 3.訪問PASS-THRU區(qū)域?qū)嶒?4.用 FIFO實現(xiàn)總線 DMA 實驗 15 CPLD下載單元 (PC DRIVER) 主要構(gòu) 成: 此單元位于實驗極左部 ,芯片編程時 ,用專用電纜將 PC 機并口連至 PC-PORT 排針 ,而將 E-PLD 排針連至 PLD UNIT 單元的 EPLD單元相應(yīng)排針即可。 16 開關(guān)及發(fā)光二極管顯示燈單元 (SW-LED UNIT) 主要構(gòu)成: 由十六組撥動開關(guān)及顯示燈 ,用來指示邏輯電平。注意 :當(dāng)顯示燈亮?xí)r表示邏輯低電平 ,滅時表示邏輯高電平。 17 單脈沖觸發(fā)單元 (KK UNIT) 主要構(gòu)成: 包括兩個單脈沖觸發(fā)器 ,由 74LS00芯片和微動開關(guān)等構(gòu)成兩路 R-S觸發(fā)器。單脈沖輸出分上跳和下跳 ,分別以“”和“ -“ 表 示 ,其輸出 KKI和 KK2是未經(jīng)過消抖電路的輸出端。 18 信號源單元 (SIGNAL UNIT) 19 轉(zhuǎn)接母線 主要構(gòu)成: 此單元由 10組排針引線 ,圓孔單股導(dǎo)線插座組成 ,用于將排針形 式的電路引腳和單股導(dǎo)線形式的引腳相互轉(zhuǎn)換。從而為各實驗 單元的相互配合使用提供方便。 2.2.2 PCI 總線擴展卡單元結(jié)構(gòu)及其功能 主要芯片及其結(jié)構(gòu): AMCC S5933芯片, 24C16芯片,系統(tǒng)芯片。 主要功能: 實現(xiàn) PCI總線到 ADD ON總線的轉(zhuǎn)換,并進行電 路初始化工作。 2.3 32位微機實驗系統(tǒng)的三種總線 2.3.1 PCI 總線接口信號概述 1. 地址和數(shù)據(jù)信號線: AD31:0 t/s PCI 局部總線的地址 /數(shù)據(jù)線 .這些管腳位為地址數(shù)據(jù)所復(fù)用。每一個總線操作都包含了一個地址相位和一個或多個數(shù)據(jù)相位。當(dāng) FRAME#有效時 ,表示地址相位。當(dāng) IRDy#和 JDRY#同時有效時 ,表示數(shù)據(jù)相位。 C/BE3:0# t/s 總線命令和字節(jié)使能。復(fù)用信號線。在一個地址相位的總線操作之后 ,這些管腳產(chǎn)生 0總線命令。在一個數(shù)據(jù)相位之后 ,管腳被用來充當(dāng)字節(jié)使能 ,說明數(shù)據(jù)線上 的那些字節(jié)有效。 PAR t/s 奇偶校驗。是對 AD31:0和 C/BE0:3#進行校驗的。在 地址相位后的一個周期內(nèi)由控制者發(fā)出穩(wěn)定的 PAR。在一個寫 江蘇大學(xué)本科學(xué)位論文 -8- 數(shù)據(jù)操作之后 ,緊跟著 IRDY#激活信號 ,總線控制發(fā)出一個 PAR信號。在一個讀數(shù)據(jù)操作之后 ,緊跟著 JDRY#激活信號 ,從設(shè)備發(fā)出一個 PAR信號。信號延遲一個時鐘周期。 2. 接口控制信號線: FRAME# s/t/s 幀周取信號 .該信號由當(dāng)前總線控制 ,標(biāo)識了一個總線 操作的開始和持續(xù)。一開始產(chǎn)生的信號表示了一次總線傳 的 開始 ,而且有效的地址信號和對應(yīng)的總線命令產(chǎn)生。在總線操 作的數(shù)據(jù)傳輸部分該信號的保持 ,當(dāng)信號無效說明進入最后一個數(shù)據(jù)相位。 IRDY# s/t/s 主設(shè)備 Ready。該信號由總線控制者發(fā)出 ,表示總線控 制者可以完成當(dāng)前的數(shù)據(jù)相位。對寫操作 ,他表示 AD31:0上的數(shù)據(jù)有效。當(dāng) IRDY#和 TRDY#同時有效時 ,數(shù)據(jù)傳輸才能進行 ,否則進入等待狀態(tài)。 TRDY# s/t/s 從設(shè)備 Ready。該信號由從設(shè)備發(fā)出 ,表示從設(shè)備可以 完成當(dāng)前的數(shù)據(jù)相位。對讀操作 ,他表示從設(shè)備在 AD31:0上提供了有效的數(shù)據(jù)。當(dāng) IRDY#和 TRDY#同時有效時 ,數(shù)據(jù)傳 輸才能進行 ,否則進入等待狀態(tài)。 STOP# s/t/s 停止。停止信號由從設(shè)備發(fā)出 ,用來向主設(shè)備發(fā)出停上當(dāng)前傳輸?shù)男畔ⅰ?LOCK# in 鎖定。該信號表示要獨占資源。 S5933可能被某一主設(shè)備 鎖定當(dāng)作一個從設(shè)備。但當(dāng) S5933是一個主設(shè)備時 ,S5933下 能被鎖定。 IDSEL in 初始化設(shè)備選擇。在配制讀寫操作時 ,該信號為片選信號。 DEVSEL# s/t/s 設(shè)備選擇。該信號由一 個激活的從設(shè)備發(fā)出 ,譯碼為地 址和總線指令有效。對于主設(shè)備 , 它表示是否有設(shè)備對當(dāng)前 時鐘周期進行譯碼。錯誤反應(yīng)信號線: PERR# s/t/s 校驗錯。這信號報告了除特殊周期外其他任何周期在總線傳輸?shù)臄?shù)據(jù)相位中出現(xiàn)校驗錯誤。 SERR# o/d 系統(tǒng)錯。該信號用來報告地址奇偶錯。特殊命令周期中的數(shù)據(jù)奇偶錯以及任何錯誤可能引起災(zāi)難性后果的系統(tǒng)錯誤。仲裁信號線: REQ# out 請求信號。該信號由一個想要成為主控的設(shè)備發(fā)出。他是 一個點對點的信號并且每一個 設(shè)備都有自己的 REQ GNT# in 應(yīng)答信號。是一個點對點的允許信號 ,表示每一個潛在的設(shè)備已經(jīng)取得了控制總線的權(quán)利。 江蘇大學(xué)本科學(xué)位論文 -9- 3. 系統(tǒng)信號線: CLK# in 時鐘信號。除了 RST#和 IRQA#,CLK對所有信號上升沿有效。其頻率最高為 33MHZ,最低為 DC(0HZ)。 RST# in 復(fù)位。將信號復(fù)位到一個已知的狀態(tài)。所有的 PCI總線的 輸出接口信號不能被驅(qū)動 ,而把極開路信號象 SERR#被置為高 阻狀態(tài)。 4 中斷信號線: INTA# o/d 中斷 A。該信號是一個電平觸發(fā) ,低電平有效的信號。 2.3.2 ADD ON總線接口信號概述 1 4寄存器訪問信號線: DQ31:0 t/s 數(shù)據(jù)通路。代表了為外圍設(shè)備的數(shù)據(jù)總線提供的數(shù)據(jù)通 路。它提供了控制器的 FIFO 和其他寄存器的接口。這些信號 線需要加上拉電阻。 ADR6:2 in ADD-ON地址線 ,用來選擇控制器中 16個雙字寄存器的哪 個用來獲得讀寫周期。 ADR6:2 Register Name 00000 Add-On輸入郵箱寄存器 1 00001 Add-On輸入郵箱寄存器 2 00010 Add-On輸入郵箱寄存器 3 00011 Add-On輸入郵箱寄存器 4 001O0 Add-On 輸出出郵箱寄存器 1 00101 Add-On輸出郵箱寄存器 2 00110 Add-On輸出郵箱寄存器 3 00111 Add-On輸出郵箱寄存器 4 01000 Add-OnFIFO 端口 01001 總線控制寫地址寄存器 01010 Add-On Pass-Thru地址 01011 Add-On Pass-Thru數(shù)據(jù) 01100 總線控制讀地址寄存器 01101 Add-On郵箱空 /滿狀態(tài) 01110 Add-On中斷控制 01111 Add-On通用控制 /狀態(tài) 10110 總線控制寫傳輸計數(shù) 10111 總線控制讀傳輸 計數(shù) BE3# in 字節(jié)使能 3(32位模式 )。用來連接讀寫選通 (RD#,WR#)和 ADD-ON江蘇大學(xué)本科學(xué)位論文 -10- 選擇信號 SELECT#。作為字節(jié)使能時 ,當(dāng)對由 ADR6:2 指定區(qū)域的 D24:31 進行讀寫操作時 ,這個信號必須被聲明。 BE3#有內(nèi)部的上拉電阻。 BE2:0 in 字節(jié)使能 2:0。 SELECT# in ADD-ON接口選擇。任何讀 /寫 ADD-ON寄存器的動作都必須在 SELECT#為低時進行。在聲明 RD#和 WR#時該信號必須有效 WR# in 寫選通 RD# in 讀選通 MODE in 控制在 DQ總線上的 S5933 數(shù)據(jù)是 32位 (MODE=LOW)還是 16位 (MODE=HIGH)。 16 位模式時 ,BE3#被定義成地址信號 ADR1。該信 號有一個上拉電阻 5 FIFO訪問信號線: WRFIFO# in 寫 FIFO。不用發(fā) SELECT#或 ADR6:2就直接訪問 FIFO。訪問 寬度依賴于數(shù)據(jù)總線可用的大小。這個信號意味著用 ADD-ON系 統(tǒng)執(zhí)行 PCI DMA傳遞。擁有上拉電阻。 RDFIFO# in 讀 FIFO。不用發(fā) SELFCT#或 ADR6:2就直接訪問 FIFO。訪問 寬度由 MODE決定。這個信號意味著用 ADD-ON系統(tǒng)執(zhí)行 PCI DMA 傳遞。擁有上達(dá)電阻。 WRFULL out 寫 FIFO滿。它表示 ADD-ON到 PCI總線的 FIFO 是否能接 收更多的數(shù)據(jù)。管腳的邏輯低可以代表一個 DMA寫請求 (ADD-ON 到 PCI FIFO)RDEMPTY out 讀 FIFO空。它表示 PCI 到 ADD-ON 總線的 FIFO是否包含了數(shù)據(jù)。管腳的邏輯低可以代表一個 DMA 讀請求 (PCI到 ADD-ON FIFO)。 6 Pass-Thru訪問信號線: PTATN# out PASS-THRU注意信號。該信號指示一個激活的 PCI總線周 期被譯碼 ,數(shù)據(jù) 必須被讀出或?qū)懭?PASS-THRU數(shù)據(jù)寄存器 PTBURST# out PASS-THRU突發(fā)請求。包含了當(dāng)前 PASS-THRU周期的 PCI 總線操作請求突發(fā)傳輸 PTRDY# in PASS-THRU就緒。表示 ADD-ON已經(jīng)完成了一個 PASS-THRU 周期 ,另一個周期可以開始了。 PTNUM1:0 out PASS-THRU數(shù)據(jù)。指示由哪個基地址寄存器解碼 PASS-THRU 動作。 00對應(yīng) 1,依次類推。 PTBE3:0 out PASS-THRU字節(jié)使能。表示哪個字節(jié)被用來請求完 成 PASS-THRU操作。 PTATN#有效時有效 PTADR# in PASS-THRU地址。這個信號引起 PASS-THRU請求的真實地 址出現(xiàn)在 DQ信號線上。對 32位 ADD-ON總線 ,使用 DQ31:0, 江蘇大學(xué)本科學(xué)位論文 -11- 對 16位 ADD-ON總線 ,使用 DQ15:0。 PTWR out PASS-THRU寫。該信號指示 PASS-THRU操作是讀操作還是 寫操作。只有在 PTATN#有效時有效 7 System信號線: SYSRST# out 系統(tǒng)復(fù)位。該信號是低電平激活輸出 ,是 PCI復(fù) 位 (RST#)的 緩沖形式。它不同步于 PCI接口控制器內(nèi)的任何時鐘。而且該信 號可以從 PCI主機接口通過軟件激活。 BPCLK out 緩沖的 PCI時鐘。是 PCI 時鐘的一種緩沖形式 ,具有 PCI時 鐘的一切特征。 IRQ# out 中斷。這個信號通知 ADD-0N系統(tǒng)產(chǎn)生了一個有意義的事件 , 這個事件代表了 PCI控制器一個動作的結(jié)果 FLT# in 漂浮。當(dāng) 聲明時 ,S5933的所有管腳都漂浮。在內(nèi)部有一個上拉電阻。 8 ADD ON發(fā)起 DMA傳輸使用的控制信號線: FWE ADD ON到 PCI的 FIFO“寄存器空”信號。 FRF PCI 到 ADD ON FIFO“寄存器滿”信號。 FRC FIFO 讀控制信號。 FWC FIFO 寫控制信號 AMWEN DMA 寫允許信號 AMREN DMA 讀允許信號 9 訪問郵箱部分字節(jié)的信號線: EA7: 0 連接郵箱 4字節(jié) 3的信號 EMBCLK 郵箱 4字節(jié) 3的載入時鐘信號 2.3.3 ISA 部分仿真信號概述 1 地址與數(shù)據(jù)信號線: XA15:0 地址線輸出,用來指出內(nèi)存地址或 I/O地址,在系統(tǒng)總線周期中 由 CPU 驅(qū)動。 XD7:0 雙向數(shù)據(jù)通路,連接 I/O和外部存儲器的數(shù)據(jù)接口,用來在 CPU, 存儲器及 I/O端口之間傳送數(shù)據(jù),可利用 XIOW, XIOR, XMEW , XMER來進行數(shù)據(jù)選通。 XIOW I/O寫命令輸出,低電平有效。該信號由 CPU或 DMA控制器產(chǎn)生, 由總線控制器驅(qū)動后送至總線。該信號指明在地址總線上有一 個 I/O端口地址,并指明數(shù)據(jù)總線上有一個要寫至 I/O端口數(shù) 據(jù)。這一信號變成低電平時開始寫操作,數(shù)據(jù)總線上的數(shù)據(jù)在XIOW 上升沿時刻才 能寫入被尋址的端口。 江蘇大學(xué)本科學(xué)位論文 -12- XIOR I/O讀命令輸出,低電平有效。該信號指明當(dāng)前的總線周期是一 個 I/O端口讀周期,同時地址總線上的地址是一個 I/O端口地 址,被尋址的數(shù)據(jù)送上數(shù)據(jù)總線由微處理器讀取。在 I/O信號 上升沿由微處理器輸入有效的數(shù)據(jù)。 XMEW 存儲器寫命令輸出,低電平有效,用于請求從存儲器讀取數(shù)據(jù)。 該信號 由總線控制器驅(qū)動,它表明地址總線上有一個有效的存儲 器單元地址,數(shù)據(jù)數(shù)據(jù)總線上的數(shù)據(jù)要 XMEW信號的上升沿寫 入這個單元。 XMER 存儲器讀命令輸出,低電平有效,用于 請求從存儲器讀取數(shù)據(jù)。 該信號 由總線控制器驅(qū)動,它表明地址總線上有一個有效的存儲器讀地址,在 XMER信號上升沿由微處理器讀入有效的數(shù)據(jù)。 IRQ 中斷信號(下降沿)。 IOY4:0 I/O設(shè)備片選。 MY1:0 存儲器設(shè)備片選。 江蘇大學(xué)本科學(xué)位論文 -13- 第三章 AMCC S5933 芯片的應(yīng)用 3.1 PCI 配置空間和基地址寄存器的使用 PCI 總線的原理是為了改善 PC 數(shù)據(jù)輸入 /輸出的瓶頸問題 ,從而提高系統(tǒng)運行的速度和擴展能力。 PCI總線將 I/O總線上的高速 外圍設(shè)備移出 ,并將這些設(shè) 備放置到一個離系統(tǒng)總線更近的地方 ,使得這些外圍設(shè)備可以和處理器以更快 的速度交換數(shù)據(jù)。由于 PCI 總線規(guī)范十分復(fù)雜 ,直接針對 PCI 接口進行開發(fā)設(shè)計具有較大的難度。目前廣泛采用的基于 PCI 總線的開發(fā)有兩種 :一種是使用 PLD器件 ,另一種是使用 PCI 總線的控制芯片 ,我們采用的就是 AMCC 的 S5933。使用控制芯片只需要學(xué)習(xí)控制芯片提供的簡化的規(guī)范就可以完成 PCI 總線應(yīng)用的開發(fā)設(shè)計 ,是一種簡便快捷的方法。 1. PCI的配置空間 PCI總線上定義了三種物理地址空間 :內(nèi)容地址空間、 I/O地 址空間和配置地址空間 ,其中內(nèi)存地址空間和 I/O 地址空間為通常意義地址空間 ,而配置地址空間用于支持 PCI的硬件配置。 PCI總線設(shè)備中的配置地址空間是一個容量為 256字節(jié)并具有特定記錄結(jié)構(gòu)或模型的地址空間。該空間又分為頭標(biāo)區(qū)和設(shè)備有關(guān)區(qū)兩部分。頭標(biāo)區(qū)的長度為64字節(jié) ,是每個 PCI 設(shè)備都必須支持的寄存器分配區(qū)域。該區(qū)中的各個字段用來唯一的識別設(shè)備 ,并使設(shè)備可以得到控制。頭標(biāo)區(qū)的前 16個字節(jié)定義在各種類型的設(shè)備中都是一樣的 ,而其余 48 字節(jié)可以根據(jù)設(shè)備支持的基本功能進行不同的配置。 2. 基地址寄存器 PCI設(shè)備 的地址空間可以在系統(tǒng)中浮動是 PCI總線中的重要功能之一 ,它能 夠簡化設(shè)備的配置過程。在系統(tǒng)上電時 ,與設(shè)備無關(guān)的系統(tǒng)軟件將確定系統(tǒng)中有那些設(shè)備存在 ,并建立一個統(tǒng)一的地址映射關(guān)系 ,確定一個設(shè)備是否有擴展 ROM。 上電軟件在引導(dǎo)操作系統(tǒng)之前必須要建立一個統(tǒng)一的地址映射 ,以確定系統(tǒng)中有多少的存儲器、多少的 I/O設(shè)備以及這些存儲器、 I/O設(shè)備占用的空間。當(dāng)確定這些信息后 ,上電軟件就可以把 I/O 控制器及存儲器映射到系統(tǒng)的合理地址空間并引導(dǎo)系統(tǒng)。為了使這種映射能夠與設(shè)備無關(guān) ,從而在配置空間的頭標(biāo)區(qū)中安排了一個供地址映射使 用的基地址寄存器。所有的基地址寄存器的第 0位均為只讀位 ,其 0/1 值可以表示該寄存器映射的地址空間是存儲器空間 /I/O 空間。從表 4-3-1可以看出 ,從頭標(biāo)區(qū)的 10H字節(jié)開始有 6個基地址寄存器 ,每個基地址寄存器占用 4 字節(jié)的地址??偩€擴展卡一共可以使用 5 個基地址寄存器 ,其中基地址 0寄存器映射到一個 64字節(jié)的 I/O空間中 ,是控制芯片給用戶提供控制接口。江蘇大學(xué)本科學(xué)位論文 -14- 另外 4個基地址寄存器分別映射到不同大小的 I/O空間和存儲器空間中。總線擴展卡資源申請情況: 寄存器 空間類型 大小 BASEO I/O空間 64B BASE1 I/O空間 64B BASE2 I/O空間 256B BASE3 存儲器空間 64KB BASE4 I/O空間 64B 注: PTNU1:0 : 00 =BASE1 ; 01 =BASE2 ; 10 = BASE3 ; 11 = BASE4 3.2 AMCC S5933 總線控制器 1 2 3 4ABCD4321DCBAT i t l eN u m b e r R e vi s i o nS i z eBD a t e : 3 - J un - 20 03 S he e t o f F i l e : E : 曾雪枝資料 p r ot e l 文件 M yD e s i gn 1 . d dbD r a w n B y :S 5 9 3 3B P C L KIR Q #S Y S R S T #D Q 3 1 : 0 S E L E C T #A D R 6 : 2 B E 3 : 0 #R D #W R #W R F IF O #R D F IF O #R D E M P T YW R F U L LP T A T N #P T B U R S T #P T N U M 1 : 0 #P T B E 3 : 0 #P T A D R #P T W RP T R D Y #M O D EF L T #S N VE A 1 5 : 0 E Q 7 : 0 E R D # / S C LE W R # / S D AA D D - O N B U SC O N T R O LA D D - O ND A T A B U SS 5 9 3 3R E G I S T E RA C C E S SD I R E C T F I F OA C C E S SP A S S - T H R UC O N T R O L /A C C E S SS 5 9 3 3C O N T R O LB Y T E W I D EC O N F I G /B I O S O P TS E R I A L B U SC O N F I G /B I O S O P T作為一個中間媒介 ,S5933具有功能強 ,使用靈活的特點。它符合 PCI局部總線規(guī)范 2.1 版 ,可以在 PCI 總線上充當(dāng)從設(shè)備和主控設(shè)備。 S5933 允許在 PCI 總線和用戶應(yīng)用間進行特殊的直接數(shù)據(jù)存取 ,這是 通過 4 個已經(jīng)定義好的Pass-Thru數(shù)據(jù)通道來實現(xiàn)的。每個數(shù)據(jù)通道都通過定義一個主控內(nèi)存寄存器尺寸和 8/16/32位的用戶總線寬度來實現(xiàn)傳輸。在 S5933作為總線主控設(shè)備應(yīng)用時 ,江蘇大學(xué)本科學(xué)位論文 -15- 附加的兩個 32 位的 FIFO 提供了更通用的數(shù)據(jù)傳輸功能。 FIFO DMA 傳輸支持使用地址和傳輸計數(shù)寄存器。 4個郵箱寄存器都配有一個狀態(tài)寄存器和擴展的中斷功能 ,它們使得兩種總線之間可以靈活的進行用戶命令和消息傳遞。另外 ,S5933也允許使用外部串口 ,或單字節(jié)非易失存儲器進行一些預(yù)登錄初始化的需求 ,也提供用戶擴展 BIOS 或 POST代碼的 功能。 S5933提供了 3個物理總線的接口 :PCI 總線接口、 Add-On總線 (用戶總線 ) 和一個可選的串行或并行非易失存儲部總線。總線之間的數(shù)據(jù)傳輸可以通過郵箱寄存器、 FIFO數(shù)據(jù)通道或者使用 PASS-THRU 數(shù)據(jù)通道來實現(xiàn)。 S5933 主控總線或DMA 數(shù)據(jù)傳輸是通過軟件或硬件信號對 FIFO 數(shù)據(jù)通道進行控制來實現(xiàn)的 ,S5933還能用于 I/O Audio,ISDN/FDDI/ATM,Graphics/MPEG,衛(wèi)星接收器 /Modem。 3.3 AMCC S5933 各接口描述 1) PCI總線接口 (見書后附圖 3 1) S5933 對所有的 PCI 總線地址周期進行解碼 ,如果當(dāng)前的地址周期指向S5933 PASS-THRU區(qū)域的其中之一 ,則 DEVEL 被聲明 .如果 PASS-THRU 邏輯當(dāng)前處于空閑 ,則總線周期類型被解碼 ,并且 ADD-ON 的 PASS-THRU 狀態(tài)信號輸出來自于初始化 ADD-ON 端的一個傳輸如果 PASS-THRU 邏輯當(dāng)前忙于完成前一個訪問 ,則S5933給 PCI初始器發(fā)一個重試信號 . 2) ADD-ON總線接口 (見書后附圖 3 2) S5933提供一個簡單得 ,通用得 ADD-On 總線接口 .S5933上的 ADD-ON數(shù)據(jù)線 寬度是一個 32位的 .數(shù)據(jù)與 S5933內(nèi)部寄存器的雙向傳輸是通過一個片選來解碼讀 /寫信號的 ,S5933 提供提供引腳來允許它的 FIFOS 進行 DMA 傳輸 .ADD-ON 接口中的輸出引腳包括一個中斷源 ,一個 PCI 緩沖時鐘 ,一個軟件控制重置信號 ,中斷輸出引腳用來當(dāng)一個選中的郵箱或自測事件發(fā)生時提供一個中斷信號 .緩沖時鐘輸出為 PASS-THRU 的數(shù)據(jù)傳輸提供同步信號 ,來自 S5933 的軟件控制重置信號以一種系統(tǒng)軟引導(dǎo)的處理方式為 ADD-ON硬件提供重置 . 3) S5933的 PCI 操作寄存器 OBM1 -輸出郵箱寄存器 1 OBM2 -輸出郵箱寄存器 2 OBM3 -輸出郵箱寄存器 3 OBM4 -輸出郵箱寄存器 4 IMB1 -輸入郵箱寄存器 1 IMB2 -輸入郵箱寄存器 2 IMB3 -輸入郵箱寄存器 3 IMB4 -輸入郵箱寄存器 4 江蘇大學(xué)本科學(xué)位論文 -16- FIFO -FIFO端口寄存器 MWAR -主控寫地址寄存器 MRAR -主控讀地址寄存器 MRTC -主控讀傳輸寄存 器 MBEF -郵箱空 /滿狀態(tài)寄存器 INTCSR -中斷 /控制 /狀態(tài)寄存器 MCSR -總線主控控制 /狀態(tài)寄存器 4) 5.3.4 S5933 的 ADD-ON操作寄存器 AIMB1 -ADD-ON輸入郵箱寄存器 1 AIMB2 -ADD-ON輸入郵箱寄存器 2 AIMB3 -ADD-ON輸入郵箱寄存器 3 AIMB4 -ADD-ON輸入郵箱寄存器 4 OIMB1 -ADD-ON輸出郵箱寄存器 1 OIMB2 -ADD-ON輸出郵箱寄存器 2 OIMB3 -ADD-ON輸出郵箱寄存器 3 OIMB4 -ADD-ON輸出郵箱寄存器 4 AFIFO -ADD-ON FIFO端口寄存器 MWAR -ADD-ON主控寫地址寄存器 APTA -ADD-ON直通地址寄存器 APTD -ADD-ON直通數(shù)據(jù)寄存器 MRAR -主控讀地址寄存器 AMBEF -郵箱空 /滿狀態(tài)寄存器 AINT -中斷控制寄存器 AGCSTS -ADD-ON通用控制狀態(tài)寄存器 MWTC -主控寫傳輸計數(shù)寄存器 MRTC -主控讀傳輸計數(shù)寄存器 5) 郵箱寄存器 S5933中使用了兩組各四個 32位的郵箱寄存器。每組寄存器都是用來從一 總線向另一總線傳輸數(shù)據(jù)的。郵箱寄存器為用戶提供了一種簡便的方法在兩種總線間傳輸用戶信息 (如命令、狀態(tài)、參數(shù)等 )。每個郵箱寄存器都對應(yīng)了一個標(biāo)志位用來標(biāo)識郵箱的空 /滿狀態(tài) ,該標(biāo)志位存在于狀態(tài)寄存器中 ,可以從 PCI 或ADD-ON端獲取。 6) FIFO寄存器 在 S5933 的內(nèi)部有兩個單向的 FIFO,一個用來將 PCI 總線上的數(shù)據(jù)傳送給ADD-ON總線 ,另一個用來將 ADD-ON總線上的數(shù)據(jù)傳送給 PCI總線。每個 FIFO擁江蘇大學(xué)本科學(xué)位論文 -17- 有 8個 32位的寄存器 ,它們和特定的 PCI/ADD-ON操作寄存器相連 ,通過這兩個操作寄存器可以實現(xiàn)對 FIFO的訪問。對 FIFO的訪問可以采用同步和異步兩種方式 ,至于是哪個 FIFO 被訪問。取決于是讀操作還是寫操作。 FIFO 可以作為一個 PCI目標(biāo)或 PCI 發(fā)起者。作為目標(biāo) ,FIFO 允許 PCI 總線主控器存取 ADD-ON 的數(shù)據(jù)。FIFO允許 S5933成為一個 PCI的發(fā)起者。 55933 提供的讀寫地址寄存器和計數(shù)寄存器允許 S5933通過 PCI總線完成 DMA傳輸 ,且 FIFO可以在一個應(yīng)用中的不同時刻扮演目標(biāo)和發(fā)起者的角色。 FIFO可以被配置用來支持多樣的 ADD-ON總線配置 ,亦可以支持 ADD-ON 總線采用 8/16/32 位接口。 FIFO 具有在 PCI 端和 ADO-ON 端產(chǎn)生中斷的能力 ,這使得 S5933可以支持總 線主控傳輸。在 FIFO作為一個發(fā)起者時 ,通過特殊的設(shè)置可以從 PCI 接口端或 ADD-ON 接口端啟動 一個總線主設(shè)各傳輸。 7) 無源存儲器接口 1. Serial NV Devices 信號線 SCL t/s 串行時鐘。這個輸出是為了驅(qū)動一個作為總線的控制的 兩線串行接口和函數(shù)。該信號直接接入一個串行的非易失 RAMS或 EEPROMS。該信號和 ERD#信號公用一個管腳。 SDA t/s 串行地址 /數(shù)據(jù)信號。這個雙向管腳是用來讀寫一個nvRAM或 EEPROM的。他是一個漏極開路輸出信號 SNV in 串行非易失設(shè)備選擇。當(dāng)該值為高時 ,表示一個 serial boot device 2. Byte-Wide NV Devices信號線 EA15:0 t/s 外部 nv存儲器地址。這組信號線直接連接到外部 BIOS(或 EEPROM)或 EPROM 的地址線。 PCI接口控制器通過多個讀周期操作一個 8 位設(shè)備實現(xiàn)一個 32 位 的存取。地址空間從 0040H-0070H用來預(yù)裝入一些數(shù)據(jù)。初始化 PCI 的配置寄存器。外部存儲器的存儲范圍必須在 128B 到 64KB之間 .當(dāng)一個串行存儲器被連接到 S5933 時 EA7:0被從新配置 ,并且充當(dāng) ADD-ON到 PCI的郵箱寄存器 ,同時 E8被用來充當(dāng)郵箱的“裝入鎖”。而 EA15用來充當(dāng) PCI到 ADD-ON的 FIFO“寄存器滿”信號 (FRF),EA14則充當(dāng) ADD-ON到 PCI的 FIFO“寄存器空”信號 (FWE)。 ERD# out 外部 nv存儲器讀控制。當(dāng)該信號由低向高轉(zhuǎn)換時 ,數(shù) 據(jù)傳人 S5933。該信號和 SCL共享一個管腳。 EWR# t/s 外部 nv 存儲器寫控制。讀過程 EQ7:0上放數(shù)據(jù) ,EA15:0上放地址。該信號和 SDA共享一個管腳。 江蘇大學(xué)本科學(xué)位論文 -18- EQ7:0 t/s 外部存儲器數(shù)據(jù)總線。這些線直接連接到外部存儲器 上 。 當(dāng) 一 個 串 行 存 儲 器 連 接 到 S5933 上時 , EQ4,EQS,EQ6,EQ7i 被新配置以獲得 ADD-ON 接口傳來的總線控制信號。 8) PASS-THRU概述 S5933為 PCI總線提供了一個簡單的寄存器訪問端口 ,通過與 ADD-ON邏輯使用 握手協(xié)議 PCI 總線可以直接訪問 ADD-ON 上的資源 . PASS-THRU 的數(shù)據(jù)傳輸方法對于直接訪問 ADD-ON 卡上的外設(shè)如 :存儲器和寄存器時很有用的 . PASS-THRU操作要求外部 NV 存儲器引導(dǎo)設(shè)備來定義和配置 S5933 PASS-THRU 區(qū)域。 S5933為用戶提供 4 個可配置的 PASS-THRU 區(qū)域 .每個區(qū)域?qū)?yīng)一個 PCI 配置基地址寄存器 (BADR-4).一個地址代表一個地址空間塊 .每個塊能映射到存儲器和 I/O 空間 .可以尋址 1M 字節(jié)以內(nèi) (對應(yīng)于 PC 實模式地址空間 ).每個區(qū)域同樣為 ADD-ON總線備有可配置 的總線寬度 .一個 8,16,32-bitADD-ON 接口可以被選擇用來與各種 ADD-ON存儲器或外設(shè)進行通信 .PASS-THRU的這些特性只能在 S5933作為從設(shè)備時 ,才能被使用 .S5933 PASS-THRU模式支持單周期數(shù)據(jù)傳輸和突發(fā)傳輸 .S5933支持全帶寬下的數(shù)據(jù)傳輸 .且數(shù)據(jù)率僅受限于執(zhí)行訪問的 PCI初始化器和 ADD-ON邏輯的速度 .為提供 PCI 總線直接訪問 ADD-ON 資源的功能 ,S5933 配備了一個內(nèi)部 PASS-THRU 接口和 ADD-ON 總線接口相連 .這就使得 PCI 初始器可以執(zhí)行PASS-THRU寫 (數(shù)據(jù)傳輸從 PCI總線到 ADD-ON總線 ).或者 PASS-THRU讀 (PCI總線向 ADD-ON請求數(shù)據(jù) ).S5933 PASS-THRU接口同時支持單周期和突發(fā)的訪問 . 江蘇大學(xué)本科學(xué)位論文 -19- 第四章 ATF1504 芯片的研究 4.1 ATF1504芯片的接口和功能研究 4.1.1 ATF1504 芯片 6概述 ATF1504(見附錄 2)是一個告訴的 ,高密度的 ,復(fù)雜的可編程邏輯設(shè)備 (CPLD),它使用了 ATMEL 公司成熟的電可擦除存儲器技術(shù) .它有 64 個邏輯宏單元并有 36個 I/O引腳 .它可以很容易的將多個 TTL,SSI,MSI,LSI和 Classic PLDS集成為具有一定功能的邏輯 . ATF1504 的強大的循序開關(guān)矩陣交換電路增加了可使用的門數(shù) ,同時也增加了成功進行引腳鎖定的設(shè)計更正的可能性 . ATF1504 有 36 個雙向的 I/O引腳和 4個專門的輸入引腳 ,這個引腳取決于設(shè)備選擇包的類型 .每一個專門的引腳可同時作為一個全局控制信號 ,寄存器時鐘 ,寄存器重置或輸出使能 .這些控制信號中的沒一個都可以選取單獨用于每一個宏單元 . 64 個宏單元中的任一個都能產(chǎn)生一個隱藏的反饋至全局總線 .每個輸入和I/O 引腳同樣要進 入全局總線 .在每個邏輯塊中的開關(guān)矩陣交換電路選取來自全局總線的 40 個單個信號 .每個宏單元同時產(chǎn)生一個反饋邏輯進入一個區(qū)域總線周期 .在 ATF1504的宏單元間的 CASCADE邏輯可以快速 ,高效的生成復(fù)雜的邏輯功能 . ATF1504擁有 4個這樣的邏輯鏈 ,每個邏輯鏈都能用 40個 Product Terms 中的一個扇入來生成 Sum Term邏輯 . ATF1504 的宏單元有足夠的彈性來支持一個高復(fù)雜性 ,高速運行的邏輯功能 .每個宏單元包括 5 個部分 :Product Terms 和 Product Term 多路選擇器 ,OR/XOR/CASCADE 邏輯 ,一個 flip-flop,數(shù)促選擇和使能 ,以及邏輯陣列輸入 .未使用的 Product Terms 由編譯器自動使之無效 ,以減少功耗 ,一個安全熔絲 ,在編程是會保護 ATF1504 中的內(nèi)容 .兩個字節(jié) (16 位 )的用戶簽名為用戶可訪問的 ,它的作用是用來存儲工程名 ,部分號 ,修正或日期記錄 .用戶簽名的訪問與安全熔絲的狀態(tài)無關(guān) .ATF1504 設(shè)備是一個在系統(tǒng)可編程的 (ISP)設(shè)備 .它使用工業(yè)標(biāo)準(zhǔn)4引腳的 JTAG接口 (IEEE std.1149.1),并且與 JTAG的邊界掃描描述語言 (BSDL)是全兼 容的 .ISP允許設(shè)備在設(shè)備沒有從印制電路板上移除的狀態(tài)下進行編程 .因此 ,簡化了生產(chǎn)流程 ,ISP同時也允許使用軟件來制作和設(shè)計 . 4.1.2 ATF1504 各功能模塊的描述 1. Product Terms 多路選擇器 每個 ATF1504 單元都有 5 個 Product Terms.每兩個 Product Term 作為可能的輸入來接收同時來自全局總線和區(qū)域總線的所有信號 .Product Term 多路選擇器 (PTMUX)為宏單元的邏輯門和控制信號分配了 5個必須的 Product Term.PTMUX的編程取決于設(shè)計編譯器 .它會自動選擇最佳的宏單元配置 . 江蘇大學(xué)本科學(xué)位論文 -20- 2. OR/XOR/CASCADE 邏輯 ATF1504 邏輯結(jié)構(gòu)的設(shè)計可以高效的支持所有的邏輯類型 .在單個宏單元中 ,所有的 Product Terms 能被部成 OR門 ,生成一個 5-input的 AND/OR Sum Term. 借助于來自相鄰宏單元的 CASIN,這些邏輯門可擴展成 40個只帶有一點額外的延遲 Product Terms.宏單元的 XOR 門可以進行高效的比較和算術(shù)功能 .XOR 的一個input 來自 OR Sum Term.另一個 XOR input 可作為一個 Product Term 或者是接高 /低電平 .對于組合 outputs,固定電平 input 允許極性選擇 .對于寄存器功能 ,固定電平允許進行 Product Terms 的德摩根最小化 .XOR 門能與 T 型和 JK 型flip-flops. 3. Flip-flop ATF1504 的 flip-flop 具有非常彈性的數(shù)據(jù)和控制功能 .數(shù)據(jù)輸入可以來自獨立的 Product Term中的 XOR門 ,也可以直接來自 I/O引腳 .選擇獨立的 Product Term 允許在組合的輸出宏單元中生成一個寄存器的反饋 .(這個特性由優(yōu)化軟件自動執(zhí)行 ).此外 ,和 D,T,JK 和 SR 操作一樣 ,flip-flop 同樣能為數(shù)據(jù)鎖存之用 .在這種模式下 ,數(shù)據(jù)在時鐘為高電平是通過 ,在時鐘低電平時鎖存 .時鐘本身既可以作為全局時鐘信號 (GCK0:2)之一 ,也可以作為一個獨立的 Product Term. flip-flop 在時鐘的上升沿改變狀態(tài) .當(dāng) GCK 信號作為時鐘信號時 ,宏單元的Product Term 其中之一可以被用來作為時鐘使能 .當(dāng)時鐘使能功能有效 ,此時使能信號為低電平 ,所有的時鐘邊沿被忽略掉 . flip-flop 的異步重置 (AR)信號既可以是一個 Product Term 的 GCLEAR,也 可以是總是關(guān)閉 .AR 可同時是 Product Term的 GCLEAR的一個邏輯 OR.異步預(yù)重置 (AP)可以是一個 Product Term或者總是關(guān)閉 . 4. Output 選擇與使能 ATF1504 的宏單元的輸出可以作為寄存器輸出或者組合輸出 .隱藏的反饋信號既可作為組合信號 ,也可作為寄存器信號 ,而不論輸出是組合的還是寄存器的 .多路輸出使能器 (MOE).控制輸出使能信號 .任何緩沖器可以永久的有效用于簡單的輸出操作 .緩沖器同樣也可以永久的無效從而允許將引腳用作輸入 .在這樣的配置下 ,所有的宏單元資源依然是有效的 ,包 括隱藏的反饋信號 ,擴展器和CASCADE邏輯 .每個宏單元的輸出使能既可被用做兩個專用的 OE輸入引腳也可用做一個 I/O輸入引腳 ,或者作為一個獨立的 Product Term. 5. Global Bus/Switch Matrix 全局總線包括所有的 inpu 和 I/O 引腳信號 ,以及來自 64 個宏單元的隱藏反饋信號 .在每個邏輯塊中的開關(guān)矩陣交換電路盡可能的接收來自全局總線的所有信號 .在軟件控制下 ,40多個這種信號可以作為邏輯塊得輸入 . 6. Foldback Bus 江蘇大學(xué)本科學(xué)位論文 -21- 每個宏單元同樣生成一個 Foldback Product Term.這個信號進入?yún)^(qū)域總線 ,并且對于 4個宏單元都有效 . Foldback是宏單元的 Product Term中的一個相反的極性 .在每個區(qū)域中的 16 個 Foldback Term 允許生成高 Fan-in sum terms 并帶有一般的附加延時 . 7. Programmable Pin-Keeper Option for Inputs and I/Os ATF1504提供對所有 input和 I/O引腳的編程屬性從而可以利用 Pin-Keeper電路。當(dāng)任一引腳以高 /低電平驅(qū)動,并隨后左懸浮,它仍然會保持之前的高 會低電平。這個電路可以阻止未被使用的 input 和 I/O線由于懸空而影響電壓,并由此而引起的不必要的功耗和系統(tǒng)噪聲。 Keeper 電路的存在可以取消外部的上拉電阻和它們的 DC 功耗。 8. Speed/Power Management ATF1504 有多個內(nèi)建的速度和電源管理特性。 ATF1504 設(shè)有一個電路。它可以在電路沒有邏輯相互發(fā)生時自動將設(shè)備至于低源的可靠的模式。這樣不僅減少了電路在空閑期的功耗而且能夠工作在 5MHz 以下的盡可能多的應(yīng)用提供適當(dāng)?shù)哪芰抗?jié)約。這個特性可以作為一臺設(shè)備的速度屬性。 9. I/O Diagram 為了進一步減少功耗,每個 ATF1504宏單元設(shè)置了一個 Reduced Power 比特位特性。這個特性允許獨立的宏單元配置成最大能量節(jié)約。這也可以最為一臺設(shè)備的選擇選擇。 ATF1504 同樣有一個可選的 Power-Down 模式。在這個模式下,電流會降到 10mA以下。當(dāng) Power-Down屬性選取后,不論 PD1或者 PD2 引腳都可用作 Power-Down 的一部分。在設(shè)計資源文件里 ,Power-Down 屬性會被選取。當(dāng)這屬性有效時,不論 PD1, PD2 那個是高,設(shè)備都會進入 Power-Down 狀態(tài)。在Power-Down 模式下,所有的內(nèi)部邏輯信號都被鎖存和保持,作為任意的可輸出引腳。 一直到 PD為 Low,所有的引腳交互才生效,當(dāng) Power-Down特性有效時,PD1或 PD2引腳不能用作一個邏輯輸入或輸出。但是,引腳的宏單元仍然可用于生成隱藏的反饋和 CASCADE邏輯信號。所有的 Power-Down AC特性參數(shù)被來自外部的 input或 I/O 引腳計算,此時 Reduced Power 位時開啟的。對于在 Reduced Power模式下的宏單元, Reduced Power adder tRPT,必需要被加到 AC參數(shù) 中,它包括數(shù)據(jù)路徑, tLAD,tLAC,tIC,tACL,tACH 和 tSEXP.ATF1504宏單元同樣有這個屬性,由此能耗可以在每個宏單元的基礎(chǔ)上減少。通過使 Power-Down 屬性有效,那些沒被使用的宏單元就可被關(guān)閉,從而就能減少整個設(shè)備的功耗。 4.2 ATF1504 邏輯塊的分析及引腳分布 ATF1504 的邏輯塊的分析及引腳分布。 ATF1504 具有 4 個邏輯塊和 44 個引腳,其中 36個是 I/O 引腳,如下表: BLOCK A, B, C, D。 江蘇大學(xué)本科學(xué)位論文 -22- BLOCK A & Pins : 4,5,6,7(*),8,9,11,12 BLOCK B & Pins : 13(*),14,16,17,18,19,20,21 BLOCK C & Pins : 32(*),33,34,36,37,39,40,41 BLOCK D & Pins : 24,25,26,27,28,29,31,38(*) INPUT/GCLK1 : 43 INPUT/GCLRn : 1 INPUT/OE1 : 44 INPUT/OE2/GCLK2 : 2 TDI : 7 TMS : 13 TCK : 32 TDO : 38 GND : 10, 22, 30, 42 VCC : 3, 15, 23, 35 注: TDI, TMS, TCK, TD0 供編程下載用。 江蘇大學(xué)本科學(xué)位論文 -23- 第五章 ATF1504 芯片的解密與電路邏輯編程實現(xiàn) 5.1 ATF1504 解密的前期準(zhǔn)備工作 1. 步驟 1 : 由于加密的芯片型號被打磨掉了,所以解密的第一步是分析加密芯片的型號,采用的方法是:首先確 定芯片的引腳數(shù);接著搜集有這類引腳數(shù)的芯片,并進一步分析它的電源和接地引腳的數(shù)目,電源和接地引腳的分析是通過芯片在電路中的連接情況得到,這需要一定的工作量。經(jīng)過這兩個步驟就可以基本確定芯片的型號,找到兩種芯片滿足上述特征 Altera EPM7064 和 ATMEL ATF1504AS,由于這兩種芯片是完全可替換的,出于成本考慮我們選擇了 ATMEL ATF1504AS。 2. 步驟 2 : 基于對實驗有了一定的了解,接著拆分每一個單元模塊,特別是注意每個模塊中使用到的芯片的功能及使用方法,詳細(xì)查看其中的重要芯片的 結(jié)構(gòu)和功能。以及每個引腳的意義,以下是這些芯片的具體名稱和邏輯功能: A) 74LS245 雙向 8總線接收器 DIR G 邏輯功能 L L B TO A L H 無效 H L A TO B H H 無效 B) 74LS374 8 位單向地址鎖存器 OC CLK D Q(輸出) L H H L L L L L Q0 H Z C) SRAM 6264 靜態(tài)存儲器 WE CS1 CS2 OE MODE I/O Pin H L H H 輸出無效 高阻態(tài) H L H L 讀 Dout L L H H 寫 Din L L H L 寫 Din D) 74LS138 3 8譯碼器 E) 74LS32 兩輸入或門 F) 74LS244 八緩沖器 /線驅(qū)動器 /線接收器 G) 74LS390 雙十進制計數(shù)器 江蘇大學(xué)本科學(xué)位論文 -24- H) 74LS74 正邊沿觸發(fā)器雙 D型觸發(fā)器 I) LM7810 三端口電壓調(diào)整器 這也是非常關(guān)鍵的一步,因為在本系統(tǒng)中這些芯片的某些 I/O引腳與加密的ATF1504芯片的引腳有關(guān)聯(lián),所以了解這些芯片的邏輯功能是 非常必要的。 3. 步驟 3 : 經(jīng)過對上述芯片的了解之后,下一部要畫出基本接口部分詳細(xì)的電路連接草圖,在草圖中注明每塊芯片的輸入輸入信號。這些信號的標(biāo)注都采用了實驗中的實際的信號名稱,具有特定的意義。特別是對 ATF1504芯片與其他芯片的引腳以及它的其他信號線做了詳細(xì)的標(biāo)注。制作這張草圖可為今后的分析帶來極大的幫助。 4. 步驟 4 : 使用 7Protel99 SE 練習(xí)將電路圖制作成原理圖( *.SCH)以及生成 8PCB圖( *.PCB),學(xué)習(xí)和使用 Protel99 SE是為了修改原有電路板中存在的問題, 因為在進行調(diào)試時會發(fā)現(xiàn)原有電路板存在著引腳連接錯誤或跳線的一些問題,要及時糾正,需要修改原先的 PCB圖,以達(dá)到完美。 5. 步驟 5 : 深入了解 ADD ON 的總線規(guī)范。 ADD ON 總線在本實驗系統(tǒng)有著舉足輕重的作用。高級接口實驗中直接使用 ADD ON總線來實現(xiàn)通信;在基本接口部分則需要利用 ADD ON提供部分 ISA總線的仿真信號。 關(guān)于 ADD ON 總線的資料非常有限。因而只能通過從實驗板上的實際電路的連接情況以及對照每個高級實驗中所使用的信號名稱并進行整理總結(jié)。最終畫出ADD ON的總線接口圖(見附錄 3)本 系統(tǒng)中將 ADD ON總線分別用兩個 40-pin和 50-pin 的牛角尖將信號從 S5933 上引入實驗板中。其中 40-pin 牛角尖是AD31:0復(fù)用信號和 EA7:0, 50-pin牛角尖是各種控制信號。本系統(tǒng)使用了 8片 74LS245芯片將 ADD ON Connector與 ADD-ON BUS UNIT信號線進行連接。 6. 步驟 6 : 學(xué)習(xí)和了解 PCI 2.1 的總線規(guī)范。因為 32 位微機實驗系統(tǒng)第一步就是進行PCI 總線與 ADD ON 總線間的數(shù)據(jù)交互以及各控制信號的傳送因而要認(rèn)識ADD ON 必須要了解 PCI 2.1總線的各個信號(此處只討論本系統(tǒng)所用到的 PCI總線信號)的作用。因為這樣可以從整體把握加密芯片中哪些信號肯定是輸入的,哪些信號肯定是輸出的。這就大大的減少了對加密芯片的信號輸入輸出的鑒定時間,而且可以更有效,更準(zhǔn)確的進行判別。其中 C/BE3:0, FRAME, TRDY, IRDY, DEVSEL, CLK, INTA信號是非常重要的。 C/BE3:0在地址周期時指示了總線操作的類型,經(jīng) S5933后 PTNUM1:0信號線指示總線操作類型。其中 00, 01, 11都表示 I/O空間訪問,只有 10表示 是存儲器空間訪問。 CLK信江蘇大學(xué)本科學(xué)位論文 -25- 號經(jīng) S5933后有 BPCLK 來同步 PCI時鐘。 INTA經(jīng) S5933后由 IRQ來接收外部設(shè)備產(chǎn)生的中斷。讀寫操作得過程是:首先由 PCI聲明 FRAME,表示要進行總線數(shù)據(jù)傳輸。 S5933 探測到 FRAME有效候就聲明 DEVSEL,即通知 PCI它已成為從設(shè)備,兩者可以建立傳輸關(guān)系,接著就有兩種情況: A 在寫周期內(nèi), IRDY信號有效,表示有效的數(shù)據(jù)信號已在 AD0 AD31 引腳中建立,只要 TRDY信號有效,即從設(shè)備已做好了接收數(shù)據(jù)的準(zhǔn)備。于是數(shù)據(jù)將從 PCI總 線傳到 S5933的 ADD ON總線; B 在讀周期內(nèi), TRDY有效表示數(shù)據(jù)送入 AD0 AD31的引腳中。只要 IRDY有效,即主設(shè)備已做好了接收數(shù)據(jù)的準(zhǔn)備。于是數(shù)據(jù)將從 ADD-ON總線傳到 PCI總線。 7. 步驟 7 : 學(xué)習(xí)和了解 ISA 的總線接口信號(只說明本系統(tǒng)中用到的信號)。本系統(tǒng)的ISA 使用的是 8 位數(shù)據(jù)總線和 16 地址總線。其中數(shù)據(jù)總線與低 8 位地址總線復(fù)用,這將到后面做具體的分析,還有 I/O 片選信號和存儲器信號,以及 I/O 讀 /寫選通和存儲器讀 /寫選通,并且提供了一個中斷信號接口。所有這些信號通過兩片 74LS374,兩片 74LS245,一片 74LS08 以及 ATF1504芯片組成的邏輯電路將ADD ON總線的部分信號轉(zhuǎn)換而得到。 5.2 Pass-Thru 區(qū)域訪問的深入研究 8. 步驟 8 : PASS THRU 訪問的深入研究。 PASS THRU 區(qū)域具有直通訪問的功能并且可進行 8/16/32-bit 的數(shù)據(jù)傳輸,因此加密的 ATF1504芯片中的的邏輯就是采用的PASS THRU的單周期的訪問方式。因而非常需要對 PASS THRU的傳輸方式進行深入分析。 PASS THRU 的數(shù)據(jù)傳輸( PASS THRU的單周期傳輸): 單周期傳 輸是最簡單的 PCI總線傳輸。單周期傳輸有一個地址階段和一個數(shù)據(jù)階段。當(dāng)初始器將地址和指令信息驅(qū)動到 PCI總線并且聲明 FRAME,則 PCI總線事務(wù)開始。初始器總是在最后一個數(shù)據(jù)階段之前撤銷 FRAME的聲明。對于單周期的傳輸,F(xiàn)RAME僅僅在地址階段時才聲明(表明第一數(shù)據(jù)階段也是最后一個階段)。 當(dāng) S5933 探測到 FRAME被聲明,它就俘獲地址和指令信息并判斷是否是總線所期待的傳輸。如果地址是在定義的 PASS THRU 區(qū)域的范圍內(nèi),那么 S5933就接受這一傳輸(聲明 DEVSEL),并且將 PCI 地址存儲 在 PASS THRU 地址寄存器 (APTA)中。 對于 PASS THRU 寫, S5933 會立即響應(yīng)并把數(shù)據(jù)從 PCI 總線傳送到 PASSTHRU數(shù)據(jù)寄存器( APTD)。 S5933隨后通知 ADD ON接口 PASS THRU 寫正在發(fā)生,同時等著 ADD ON 邏輯去讀取 APTD 寄存器,一旦 S5933 已經(jīng)從 PCI 總線俘獲了數(shù)據(jù),則傳輸就完成了( PTRDY),傳輸從 PCI總線正確的結(jié)束,此時 PCI總線江蘇大學(xué)本科學(xué)位論文 -26- 可以為其他傳輸服務(wù)。 對于 PASS THRU 讀, S5933 通知 ADD ON 接口 PASS THRU 讀正在發(fā)生并等待 ADD ON邏輯去寫 PASS THRU數(shù)據(jù)寄存器( APTD)并且完成傳輸(聲明 PTRDY)。當(dāng)數(shù)據(jù)被寫入數(shù)據(jù)寄存器,則 S5933 完成一個傳輸周期。如果 S5933 不能盡快的寫的話,則 S5933會向初始器請求重試。會看到目標(biāo)請求無連接信息。 數(shù)據(jù)在 PCI和 ADD ON總線之間傳輸使用的 PASS-THRU接口是使用握手協(xié)議的一種工具如果 PCI 總線寫入一個 S5933 的 PASS THRU 區(qū)域,那么 ADD ON 必須從那個區(qū)域讀取數(shù)據(jù)并將數(shù)據(jù)存儲到 ADD ON。如果 PCI 從一個 PASS THRU 區(qū)域讀,那么 ADD ON 邏輯必須把數(shù) 據(jù)先寫入 S5933。一些應(yīng)用可以要求一個地址傳遞到 ADD ON 以用于 PASS THRU 的訪問。例如, PCI 上的一個 4K 字節(jié)的 PASS THRU 區(qū)域可以對應(yīng)于 ADD ON 卡上的一個 4K 字節(jié)的 SRAM 塊如果 PCI 初始器要訪問這個區(qū)域,那么 ADD ON就需要獲得那個存儲設(shè)備訪問的地址偏移量 PASS THRU地址寄存器( APTA)允許 ADD ON在當(dāng)前 PCI周期訪問地址信息。當(dāng) PCI總線執(zhí)行突發(fā)訪問時, APTA 寄存器被 S5933 更新來反映當(dāng)前數(shù)據(jù)階段的地址。對于 PCI寫, S5933 將數(shù)據(jù)從 PCI總線寫入 PASS THRU數(shù)據(jù)寄存器( APTD)。當(dāng)TRDY被聲明時 S5933 從 PCI總線獲取數(shù)據(jù)。此時 PCI對于其他傳輸都有效。當(dāng)PASS THRU數(shù)據(jù)寄存器變的滿時, S5933聲明 PASS THRU的狀態(tài)信號來表明 ADD ON上有數(shù)據(jù)。 ADD ON邏輯可以讀數(shù)據(jù)寄存器并且聲明 PTRDY來表明訪問完成。只有在當(dāng)前訪問完成后, S5933才會響應(yīng)重試對 PASS THRU的進一步訪問。對于 PCI 讀, S5933 聲明 PASS THRU 的狀態(tài)信號來表明 ADD ON 上要求數(shù)據(jù)。這是 ADD ON 邏輯要將數(shù)據(jù)寫入 PASS THRU 的數(shù)據(jù)寄 存器并聲明 PTRDY來結(jié)束訪問。只有在 ADD ON邏輯聲明了 PTRDY后, S5933給 PCI總線聲明 TRDY。如果 ADD ON 無法盡可能快的提供數(shù)據(jù),那么 S5933 會發(fā)一個重試( retry)信號給 PCI總線。這樣 PCI總線就可以去執(zhí)行其他任務(wù),而不必一直等待處理這個慢速的目標(biāo)。 訪問 PASS THRU 區(qū)域需要用到的狀態(tài)控制信號: PTATN 功能:這個輸出表明一個 PASS THRU 訪問發(fā)生。 PTNUM1:0 功能:這些輸出表明由哪個 PASS THRU區(qū)域來解碼 PCI地址。 PTBE3:0 功能:這些輸出表明那些字節(jié)有效( PCI 寫)或者被請求( PCI讀)。 PTWR 功能:這個輸出表明 PASS THRU訪問是一個 PCI讀還是 寫。 PTADR 功能:當(dāng)被聲明時,這個輸入將 PASS THRU 地址寄存器的內(nèi)容驅(qū)動到 ADD ON 數(shù)據(jù)總線。 江蘇大學(xué)本科學(xué)位論文 -27- PTRDY 功能:當(dāng)被聲明時,這個輸入表明當(dāng)前 PASS THRU 傳輸已經(jīng)被 ADD ON 完成。 BPCLK 功能:緩沖的 PCI 總 線時鐘信號輸出 基本接口部分使用的是 8位數(shù)據(jù)總線,所以我們需要用到 PTBE3:0來進行 8位數(shù)據(jù)讀寫操作。對于 PASS THRU讀( ADD ON 對 APTD寫), PCI初始器要求的字節(jié)有 PTBE3:0輸出信號來標(biāo)識。 ADD ON 邏輯使用 PTBE3:0信號來決定哪個字節(jié)必須被寫(哪個字節(jié)已經(jīng)被寫)。而 BYTEn信號表示了 PASS THRU數(shù)據(jù)寄存器的數(shù)據(jù)字節(jié)。 5.3 ATF1504 輸入輸出引腳的類型鑒定 9. 步驟 9 : ATF1504 輸入輸出引腳的詳細(xì)分析,前面所做的一系列步驟都是為準(zhǔn) 確的確定加密芯片中所用到的引腳哪些是 input,哪些是 output(這里沒有使用到同時用作 in&out)。在前面已經(jīng)提到過仿真 ISA信號使用了 PASS THRU的讀 /寫方式,因此我們將參考 PASS THRU 的單周期訪問方式來具體確定加密芯片引腳的使用情況,在畫的草圖中已經(jīng)把 ATF1504芯片引腳列出并給予接入信號名稱標(biāo)注,下面對每個引腳的連接情況做詳細(xì)說明: Pin174LS08的 Pin6,從對 74LS08的分析可知, Pin1就相當(dāng)于連接了實驗電路板上的 RESET按鈕(即電路整體重置),所以 I/O 類型為 input,且為低電平有效; Pin43ADD ON 的 BPCLK 信號線,是PCI總線的同步時鐘信號,所以 I/O類型為 input; Pin33仿真信號的 IRQ,這是外部設(shè)備的中斷信號線,所以 I/O 類型為 input;Pin4,5 分別連接了 ADD ON的 PTNUM1:0,在步驟 9中我們已經(jīng)知道這兩個信號是解析總線的使用類型(即存儲器空間或者 I/O 空間訪問),所以 I/O 類型為 input; Pin36ADD On 的PTATN,這是從 S5933 上送過來的信號,指示一個激活的 PCI 總線周期被譯碼,所以 I/O類型是 input,且為低電平有效。 Pin9ADD ON的 PTWR,對 PASS THRU的 APTD寄存器的讀 /寫信號,由 S5933發(fā)出,所以 I/O類型為 input,高電平表示一個 PASS THRU 寫(數(shù)據(jù)從 PCI 總線傳到 ADD ON 總線),低電平表示 PASS THRU讀(數(shù)據(jù)從 ADD ON總線傳到 PCI總線), Pin44,41,25,24分別連接 ADD ON 的 PTBE3:0,它指示了 ADD ON 讀取 APTD 寄存器的哪個或哪些字節(jié)要被讀取或?qū)懭?,這四個信號是進行數(shù)據(jù)傳輸?shù)幕A(chǔ),由 S5933發(fā)出,所以 I /O 類型為 input;以上就是加密芯片 ATF1504 的輸入引腳,共 11 個,這些輸入通過設(shè)計一定的邏輯關(guān)系就可以得到下面的 19 個輸出信號。為了便于設(shè)計邏輯,將輸出信號分為 3 類,第一類輸出信號送往其它芯片的( 74LS374, 74LS245),第二類輸出信號是送往其它芯片的一部分,第三類輸出信號送往 ADD On。接著就將按分類將輸出加以說明。 第一類輸出信號 : Pin1474LS245(2)的 B1引腳,對 74LS245(2)的分析可知,它實際上就是連江蘇大學(xué)本科學(xué)位論文 -28- 接了 ADD ON 的 SELECT 信號,所以 I /O 類型為 output,且為 低電平有效;Pin2674LS374 1/2 的 CLK引腳,分析 PASS THRU的訪問周期可知,該信號為了在地址周期時鎖存地址信息,所以 I/O 類型為 output,且為高電平有效;Pin2774LS374 1/2 的 OC引腳,分析 74LS374 的邏輯功能可知這是一個地址輸出使能信號,所以 I/O 類型為 output。且為低電平有效; Pin28,29 分別連接74LS374(1)的 D2:1,這兩位充當(dāng)了 ISA 地址總線的最低兩位,用于指示不同的 I /O端口及寄存器空間,非常重要,通過分析后知它就是由 PTNUM1:0提供,所以 I/O類型為 output。 第二類輸出信號 : Pin20仿真 ISA 的 XMER引腳,指示進行存儲器讀周期, I/O類型為 output,且低電平有效; Pin21仿真 ISA的 XMEW引腳,指示進行存儲器寫周期, I/O類型為 output,且低電平有效; Pin31仿真 ISA的 XIOR引腳,指示進行輸入輸出端口讀, I/O 類型為 output,且低電平有效; Pin34仿真 ISA 的 XIOW 引腳,指示進行輸入輸出端口寫, I/O類型為 output,且低電平有效。通過查閱大量資料,以及進行必要的猜測合論證 ,最終確定以上的信號是由 PTNUM1:0和 PTWR信號聯(lián)合產(chǎn)生的,具體邏輯關(guān)系將在后面的源程序中加以描述。 第三類輸出信號 : Pin20ADD ON 的 ADR4 信號,且在步驟 3 時發(fā)現(xiàn)其余的 ADR6, 5, 3, 2 分別接 GND, VCC, VCC, VCC,而當(dāng) ADR4 為低電平時,即指示訪問 APTD 寄存器,所以 I/O 類型為 output; Pin11ADD ON 的 RD 信號,作用是通知 S5933 要讀APTD寄存器,所以其 I/O類型為 output; Pin16, 19, 17, 18分別連接 ADD ON的 BE3:0,也是用 來指示 APTD的哪個或哪些字節(jié)將被訪問,通過分析后知道,基本接口使用的是 8位單周期訪問,因此是由 PTBE3:0產(chǎn)生,所以 I/O類型為output。 Pin37ADD ON的 PTADR信號,其作用是通知 S5933此刻是地址周期,應(yīng)該要將地址信息讀取并鎖存,所以其 I/O 類型為 output,且低電平有效;Pin39ADD ON的 PTRDY信號,其作用是通知 S5933讀 /寫完成,當(dāng) S5933在上升沿檢測到該信號就立即使 PTATN無效,從而結(jié)束訪問所以 I/O類型為 output,且低電平有效; Pin8ADD ON的 EMBCLK,由仿真 ISA完成總線的 IRQ 引腳產(chǎn)生的中斷信號就直接送到 EMBCLK,從而實現(xiàn)中斷,所以其 I/O 類型為 output。其中 Pin3, 15, 23, 35 固定的連接 VCC, Pin10, 22, 30, 42固定的連接 GND。 Pin2,4未用, Pin7, 13, 32, 38用于編程下載具體的引腳情況 (見附錄 2)。通過上述的分析和整理之后,即可形成大體的邏輯關(guān)系。 5.4 使用 MAX+PLUS II 軟件和 VHDL語言編程實現(xiàn)電路邏輯 10. 步驟 10 : 通過以上的各步驟的工作,已經(jīng)掌握加密芯片的基本的邏輯情 況,現(xiàn)在所需江蘇大學(xué)本科學(xué)位論文 -29- 要的是使用一種硬件描述語言和一個軟件編輯環(huán)境將這種邏輯結(jié)構(gòu)描述出來并編譯,下載輸出(以備調(diào)試之用)這里選用 9VHDL語言并使用 10MAX+PLUS II 10.2 版的軟件環(huán)境。下面將對 MAX+PLUS II 的使用情況做一個簡要敘述。因為使用的是 VHDL,所以僅使用到其中的文本編輯器來進行編輯,并選用 MAX 系列的 EPM7064LC芯片,該款芯片與 ATF1504可實現(xiàn)完全替代。程序?qū)懲曛螅乱徊骄褪蔷幾g,通過編譯后,就會將輸入輸出分配到所選芯片的引腳上面,因為是要解密,為保持原有芯片各引腳 的布局,將各輸入輸出信號分配到原來所使用的芯片引腳上,使用 MAX+PLUS II完全可以做到這一點,然后重新編譯,將生成一個編程目標(biāo)文件( *.pof),將這個文件通過下載電纜下載到新的空白芯片中即可,最后調(diào)試。在這個 VHDL程序中,僅包括三個部分:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論