freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于fpga的雙口ram在雙cpu通信中的應(yīng)用及設(shè)計稿畢業(yè)論文(編輯修改稿)

2024-07-15 17:06 本頁面
 

【文章內(nèi)容簡介】 啟動信號,F(xiàn)PGA向采樣開關(guān)發(fā)出選通信號,選定模擬開關(guān)采樣,第0路模擬量進(jìn)入,經(jīng)A/D轉(zhuǎn)換后變?yōu)?位數(shù)字量并存儲于雙口RAM中,ADC0809反饋給FPGA內(nèi)控制電路并告知轉(zhuǎn)換完畢,F(xiàn)PGA內(nèi)控制電路再選通第1路模擬量進(jìn)入,重復(fù)上述過程。 ms后,時鐘又產(chǎn)生一個脈沖啟動信號。FPGA又重新從第O路模擬量選通。 ms過程中,F(xiàn)PGA順序通過0~7路模擬開關(guān),在每次選通時須判斷是否為第7路模擬量,若是則FPGA不再響應(yīng)A/D反饋信號。單片機(jī)用于與外部PC機(jī)通信,PC機(jī)查詢是否在雙端口RAM中有新數(shù)據(jù),并經(jīng)接口電路讀人數(shù)據(jù)。其中雙口RAM具有2組獨立的數(shù)據(jù)、地址和控制總線,可對任何一個端口進(jìn)行獨立的操作。若未采用雙口RAM,F(xiàn)PGA采取中斷方式對CPU傳輸數(shù)據(jù)時,CPU就會停止當(dāng)前工作而去處理外部請求,當(dāng)處理完外部事件后再回到原來被中止處,繼續(xù)原來的工作,這樣會影響CPU的速度。因此引入雙口RAM存儲FPGA傳送來的數(shù)據(jù),然后CPU再從雙口RAM中讀數(shù),從而提高效率。本數(shù)據(jù)采集系統(tǒng)采用基于FPGA雙口RAM、單片機(jī)等實現(xiàn)數(shù)據(jù)運行處理和控制功能,使系統(tǒng)的通信和處理能力大大加強(qiáng),保證了系統(tǒng)的實時性,可以靈活地通過多種方式控制數(shù)據(jù)讀寫。 雙口 RAM 是一種高性能的雙端口靜態(tài)隨機(jī)存取器。在使用讀/寫存取器時,既可以隨時按所給定地址從 RAM 的存儲單元中將數(shù)據(jù)取出(也稱為讀出),也可以隨時將數(shù)據(jù)存入(也稱為寫入)到 RAM 的給定存儲單元中去[ 3 ]。因為可以方便地對 RAM 進(jìn)行讀/寫操作,所以使用起來非常靈活。靜態(tài)雙口RAM的每一位信息存儲在一個觸發(fā)器中,電源存在時,信息不會丟失。但是一旦停電或發(fā)生其它故障時,RAM 中的信息就不復(fù)存在,因而不能長期保存數(shù)據(jù),也不便將內(nèi)存信息攜帶到別處。 雙口 RAM 。雙口 RAM 通常由四部分組成:存儲體(存儲矩陣)、地址譯碼器、讀/寫控制器和仲裁器。 雙口RAM結(jié)構(gòu)簡圖 存儲體是雙口 RAM 的核心。它由許多存儲單元組成,每個存儲單元都能存儲一位二進(jìn)制數(shù)碼(0 或1),這些存儲單元被排列成矩陣形式稱為存儲矩陣。在譯碼器和讀/寫控制電路的控制下,既可以向存儲單元寫入 1或 0,又可以從存儲單元中將存儲的數(shù)據(jù)讀出[ 8 ]。 地址譯碼器是一種 N 中取一譯碼器,它將輸入的地址代碼譯成某一條字線的輸出信號,使連接在這條字線上的存儲單元與讀/寫控制電路接通,然后對這些單元進(jìn)行讀或?qū)憽?當(dāng)一個地址碼經(jīng)地址譯碼器譯碼后選中存儲矩陣相應(yīng)的存儲單元時,就由讀/寫控制電路控制操作狀態(tài),決定究竟是對存儲單元進(jìn)行讀出還是寫入操作。雙口 RAM 的讀/寫控制功能如表 所示。 雙口RAM讀/寫控制功能控制信號輸入端口信號模式CER/WOEI/O無 HXX高阻片選無效LLX數(shù)據(jù)寫入寫入內(nèi)存LHL數(shù)據(jù)寫出讀取內(nèi)存XXH高阻輸出無效當(dāng)片選信號CE 無效(CE=1)時,輸入/輸出端呈高阻狀態(tài),雙口 RAM 處于維持狀態(tài),既不能讀也不能寫。只有片選信號CE 有效(CE=O)時,才允許對雙口 RAM 進(jìn)行讀/寫操作;此時,若讀/寫控制信號R/W=1,OE=0 時執(zhí)行讀操作,若 R/W=0 時執(zhí)行寫操作[ 9 ]。 雙口 RAM 通過 UO 端與 CPU 交換信息,進(jìn)行讀操作時 UO 端為輸出端,寫操作時 I/O 端為輸入端。I/O端是一線兩用,由讀/寫控制器控制。雙口 RAM 芯片兩側(cè)各有幾個 I/O 端口,完全取決于地址單元中包含的位數(shù)。如雙口 RAM 芯片 IDT7132 是 32K 8 位,這意味著芯片中32K個地址單元,而每個地址單元存放的是 8 位二進(jìn)制數(shù),故兩側(cè)各有8 個I/O 端口。 仲裁控制器由多種仲裁方式組合而成,如令牌仲裁、硬件仲裁以及終端仲裁。本設(shè)計采用測試序列和時間片的軟件仲裁方法實現(xiàn),需要占用CPU的處理時間,且在仲裁過程中有可能受到外部干擾。因此對軟件編程的可靠性有較高的要求。本設(shè)計通過硬件方式進(jìn)行總線仲裁。使仲裁所需時間大為縮短,可靠性 得到提高。4雙CPU 雙CPU是指計算機(jī)系統(tǒng)擁有兩塊獨立的物理CPU,整套系統(tǒng)靠主板協(xié)調(diào)兩塊同時工作,性能理論上是單CPU的兩倍。所謂雙核心處理器,簡單地說就是在一塊CPU基板上集成兩個處理器核心,并通過并行總線將各處理器核心連接起來。雙核心并不是一個新概念,而只是CMP(Chip Multi Processors ,單芯片多處理器) 中最基本、最簡單、最容易實現(xiàn)的一種類型。   換言之雙核心處理器就是基于單個半導(dǎo)體的一個處理器上擁有兩個一樣功能的處理器核心。這樣就將兩個物理處理器核心整合入一個核中,在任務(wù)繁重時,兩個核心能相互配合,讓CPU發(fā)揮最大效力。兩個能互補的核心運行起來性能是非常不錯的,例如使用Intel奔騰D雙核處理器就相當(dāng)于你有了兩臺采用奔騰4的主機(jī)。如果說超線程是用軟件來模擬出雙核的效果,那么現(xiàn)在所說的雙核心就是真正意義上的兩個核心。他彌補了超線程適用系統(tǒng)比較少的缺點,可以廣泛用于windows操作系統(tǒng)的多個版本;他還有效的解決了雙核運算中出現(xiàn)的緩存分離與數(shù)據(jù)沖突錯誤問題[ 10 ]。CPU的主要任務(wù)是執(zhí)行各種命令,完成各種運算和控制功能,是計算機(jī)的大腦,決定著整個計算機(jī)系統(tǒng)的類型、性能和速度。人們常說的28384858Pentium、酷睿、酷睿2等都是指CPU,CPU由運算器和控制器組成。W77E58是一個快速8051 兼容微控制器;它的內(nèi)核經(jīng)過重新設(shè)計,提高了時鐘速度和存儲器訪問周期速度。經(jīng)過這種改進(jìn)以后,在相同的時鐘頻率下,它的指令執(zhí)行速度比標(biāo)準(zhǔn)8051 要快許多。一般來說,按照指令的類型。整體看。在相同的吞吐量及低頻時鐘情況下,電源消耗也降低。由于采用全靜態(tài)CMOS設(shè)計,W77E58能夠在低時鐘頻率下運行。,具有 1KB片上外部數(shù)據(jù)存儲器,當(dāng)用戶使用片上SRAM代替外部SRAM,可節(jié)省更多I/O口。 CPU的內(nèi)部結(jié)構(gòu)(1)算術(shù)邏輯單元ALU (2)寄存器組 RS(3)控制單元(4)總線(Bus) CPU的工作流程首先,CPU的內(nèi)部結(jié)構(gòu)可以分為控制單元、邏輯運算單元和存儲單元(包括內(nèi)部總線及緩沖器)三大部分。CPU的工作原理就像一個工廠對產(chǎn)品的加工過程:進(jìn)入工廠的原料(程序指令),經(jīng)過物資分配部門(控制單元)的調(diào)度分配,被送往生產(chǎn)線(邏輯運算單元),生產(chǎn)出成品(處理后的數(shù)據(jù))后,再存儲在倉庫(存儲單元)中,最后等著拿到市場上去賣(交由應(yīng)用程序使用)。通常情況下,一條指令可以包含按明確順序執(zhí)行的許多操作,CPU的工作就是執(zhí)行這些指令,完成一條指令后,CPU的控制單元又將告訴指令讀取器從內(nèi)存中讀取下一條指令來執(zhí)行。這個過程不斷快速地重復(fù)。 W77E58的特點及功能 W77E58是臺灣華邦公司生產(chǎn)的與MCS51系列單片機(jī)兼容的可多次編程的快速微處理器,在它內(nèi)部集成有32K的可重復(fù)編程的flash ROM、256字節(jié)的片內(nèi)存儲器、1K的 用MOVX指令訪問的SRAM可編程的看門狗定時器、3個16位定時器、2個增強(qiáng)型的 全雙工串行口、片內(nèi)RC振蕩器、雙16位數(shù)據(jù)指針等諸多功能[11 ]。在很多場合,幾乎不用擴(kuò)展外圍芯片就能夠滿足系統(tǒng)要求,而且,由于它采用了全新設(shè)計的微處理 器內(nèi)核,去除多余的時鐘和存儲周期,因此,在相同的晶振頻率下,根據(jù)不同的 指令類型,一般情況下,平均可達(dá) 。另外,由于W77E58采用全靜態(tài)CMOS設(shè)計,能工作在低速晶振頻率下,因此,和普通的8051相比,若W77E58采用低速工作頻率,在相同的指令吞吐量下,W77E58的節(jié)電性能也將大大提高。 77E58的指令功能完全兼容于80C52(包括對狀態(tài)位和標(biāo)志位的影響),只有一點 不同的就是在普通80C52的指令系統(tǒng)中,沒有操作指令(opcode)A5H,而在W77 E58的指令系統(tǒng)中,增加了一條指令DEC DPTR(數(shù)據(jù)指針DPTR減一),其操作指令(opcode)為A5H。而且,W77E58也具有80C52的全部資源和功能,包括4個8位I /O口,3個16位定時器,全雙工串口,中斷源等。W77E58的增加的新功能都是用 普通80C52所保留的特殊功能寄存器實現(xiàn)的,不與普通80C52的資源產(chǎn)生任何沖突,因此,W77E58可以直接用在已設(shè)計好的80C52系統(tǒng)中使用,而為原有系統(tǒng)編寫的程序幾乎不做任何改動,系統(tǒng)就可正常工作,需要注意的只是由于新的高速內(nèi)核所造成的指令執(zhí)行時間的改變及訪問外部存儲器的讀寫速度的限制。W77E58的封裝 也完全兼容于80C52,它所增加的與硬件有關(guān)的功能都是復(fù)用80C52的P1口,并且 W77E58 的44pin PLCC/QFP封裝比普通的80C51多一組4位的I/O口。 77E58的外部工作時鐘頻率可達(dá)40MHz,而且,由于W77E58采用了重新設(shè)計的微處理器內(nèi)核,去除了多余的時鐘和存儲周期,運行速度大大提高,這不僅僅是運行 晶振頻率的提高,而是將普通8051的每個機(jī)器周期(machine cycle)包含12個 時鐘周期(clock period)縮減到每個機(jī)器周期包含4個時鐘周期,這樣,即使 在相同的時鐘頻率下,根據(jù)不同的指令類型,其運行速度一般比傳統(tǒng)8051提高1. 5到3倍[ 12 ]。因此,若程序中需要軟件定時,其執(zhí)行時間須根據(jù)W77E58的指令的執(zhí)行 時間應(yīng)重新計算,一般情況下,每一個機(jī)器周期有一次取指(包括操作碼和操作 數(shù))操作,由于在W77E58的256個操作碼指令中,有128個是單字節(jié)指令,因此,W77E58的指令有一半的執(zhí)行時間只須一個機(jī)器周期,即4個時鐘周期。 77E58除了具有80C52的6個中斷源外,又另外增加了6個中斷源,共有12個可定義兩種優(yōu)先級的中斷源,每個中斷源都有獨立的中斷使能位、中斷優(yōu)先權(quán)位、中斷標(biāo)志位和中斷向量。 但是,為了同80C52兼容,所有新增加的中斷的優(yōu)先級都在 原有中斷的優(yōu)先級之后,其中斷優(yōu)先級及中斷向量如下表1所示,除了同80C52有 相同的兩個外部中斷INT0和INT1外,W77E58又增加了4個外部中斷INTINTI NTINT5。同80C52一樣,外部中斷INT0和INT1有邊沿觸發(fā)和電平觸發(fā)兩種觸發(fā) 方式,當(dāng)中斷被響應(yīng)后,其中斷標(biāo)志位由硬件自動清除;而外部中斷INT2到INT5 只有邊沿觸發(fā)方式,其中斷標(biāo)志位可被獨立設(shè)為由硬件或軟件清除,缺省設(shè)置為 由軟件清除,當(dāng)然,用戶可根據(jù)需要通過修改相對應(yīng)的特殊寄存器,將外部中斷 INT2到INT5設(shè)為由硬件清除中斷標(biāo)志位。 和80C52相比,W77E58除了具有同80C52一樣的全雙工串口外,W77E58又增加了一個全雙工串口,其外部引腳RXD。然而,這兩個串口除 了具有同原有80C52的串口相同的功能外,又增加了兩個增強(qiáng)型的特點,即多機(jī)通 訊自動地址識別和幀錯誤檢測功能,但是需要注意的是,這兩個串口也有一點細(xì)微的差別,那就是串口0(原有保留串口)可以用定時器0和定時器1作為波特率發(fā)生器,而串口1只能使用定時器1作為波特率發(fā)生器。 (1) 自動幀錯誤檢測 自動幀錯誤檢測指的是在數(shù)據(jù)傳輸?shù)倪^程中,如果由于噪音等隨機(jī)干擾造成接收方接收不到正確的停止位,W77E58能夠自動檢測出并設(shè)置標(biāo)志FE(FE_1),此標(biāo) (),用戶可以訪問,并且必須軟件清除。 (2) 多機(jī)通訊自動地址識別 在標(biāo)準(zhǔn)的8051系列單片機(jī)中,當(dāng)進(jìn)行多機(jī)通訊時,發(fā)送9位數(shù)據(jù),最后一位只當(dāng)作地址/數(shù)據(jù)識別位,但是并不能區(qū)分準(zhǔn)確地址,準(zhǔn)確地址須靠軟件識別,而在W77 E58中,增加了地址特殊寄存器SADDR和地址屏蔽特殊寄存器SADEN,只有SADEN中 的某一位為1,計算實際地址時相對應(yīng)的SADDR的位才有效,若SADEN中某一位是0 ,則進(jìn)行實際地址計算時忽略對應(yīng)的SADDR中的位。例如:SADDR:10100100、SADEN:111110實際地址:10101X1X 。在進(jìn)行多機(jī)通訊時,只有接收到的地址幀和根據(jù)SADDR、SADEN計算出的地址完全 相同時,從機(jī)才會置位中斷標(biāo)志,這完全由硬件自動完成,而不是象標(biāo)準(zhǔn)8051系列那樣必須靠軟件完成[13]。 標(biāo)準(zhǔn)的8051在執(zhí)行MOVX指令訪問外部存儲器時,執(zhí)行時間固定為2個機(jī)器周期,而W77E58可根據(jù)外部存儲器的響應(yīng)速度來選擇執(zhí)行MOVX指令時存取速度,這可以通過選擇特殊寄存器CKCON(clock control)的MD0MD2的值來實現(xiàn)。 在W77E58中,有32KB的可多次編程(MultipleTime Programmable)flash ROM, 256字節(jié)的片內(nèi)RAM,1KB的片內(nèi)用MOVX指令訪問的SRAM,這在大多情況下,足以滿足用戶要求。 (Watchdog Timer) 在W77E58中,集成了一個用戶可編程的看門狗定時器,溢出時間選擇,在軟件編程中,用戶可以隨時復(fù)位看門狗定時器。若程序跑飛,看門狗定時器溢出,則看門狗定時器自動設(shè)定中斷標(biāo)志,在512個時鐘周期后,產(chǎn)生硬件復(fù)位,并保留2個機(jī)器周期后,程序恢復(fù)到地址0000H處開始執(zhí)行。 (Dual 16bit Data Pointers) W77E58提供有兩組數(shù)據(jù)數(shù)據(jù)指針DPTR和DPTR1,另外還增加了一條附加的指令DEC DPTR,在處理連續(xù)的一片內(nèi)存空間時,可大大提高代碼效率。用戶可以通過DPS (DATA POINTER SELECT)位標(biāo)志來選擇使用DPTR或DPTR1,DPS是特殊寄存器DPS (86H)的最低位(LSB),當(dāng)DPS為0時,選擇DPTR,當(dāng)DPS為1時,選擇DPTR1。下面以數(shù)據(jù)塊
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1