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

正文內(nèi)容

基于fpga的鍵盤輸入及顯示電路(編輯修改稿)

2024-12-07 15:21 本頁面
 

【文章內(nèi)容簡介】 中的硬件原語或者底層單元合理地適配到 FPGA 內(nèi)部的固有硬件結(jié)構(gòu)上,布局的優(yōu)劣對設(shè)計(jì)的最終實(shí)現(xiàn)結(jié)果(在速度和面積兩個(gè)方面)影響很大;所謂布( Route)是指根據(jù)布局拓?fù)浣Y(jié)構(gòu),利用 FPGA 內(nèi)部的各種邊線資源,合理正確連接各個(gè) 元件的過程。 6. 時(shí)序仿真與驗(yàn)證 將布局布線的時(shí)延信息反標(biāo)注到設(shè)計(jì)網(wǎng)表中,所進(jìn)行的仿真就叫時(shí)序仿真或布局布線后仿真,簡稱后仿真。布局布線這后生成的仿真時(shí)延文件包含信息最全,不僅包含門延時(shí),還包含實(shí)際布線延時(shí),所以布線后仿真最準(zhǔn)確,能較好地反映芯片的實(shí)際工作情況。一般來說,布線持仿真步驟必須進(jìn)行,通過布線后仿真能檢查設(shè)計(jì)時(shí)序與 FPGA 實(shí)際運(yùn)行情況是否一致,確保設(shè)計(jì)的可靠性和穩(wěn)定性。 7. 板級仿真與驗(yàn)證 在有些高速設(shè)計(jì)情況下還需要使用第三方的板級驗(yàn)證工具進(jìn)行仿真與驗(yàn)證,如 Mentor Tau、Mentor Htpermality、 Mentor ICX 等工具通過 IBIS、 HSPICE 等模型的仿真,能較好的分析高速設(shè)計(jì)的信號完整性、電磁干擾( EMI)等電路特性等。 8. 調(diào)試與加載配置 設(shè)計(jì)開發(fā)的最后步驟就是在線調(diào)試或者將生成的配置文件寫入芯片中進(jìn)行測試。示波器和邏輯分析儀( LA, Logic Analyzer)是邏輯設(shè)計(jì)的主要調(diào)試工具。傳統(tǒng)的邏輯功能板級驗(yàn)證手段是用邏輯分析儀信號,設(shè)計(jì)要求 FPGA 和 PCB 設(shè)計(jì)人員保留一定數(shù)量 FPGA 管腳作為測試管腳,編寫FPGA 代碼時(shí)將需要觀察的信號作為模塊的輸出信號,在綜合實(shí)現(xiàn)時(shí)再把這些輸出信 號鎖定到測試管腳上,然后連接邏輯分析儀的探頭到這些測試腳,設(shè)定觸發(fā)條件進(jìn)行觀測。 Quartus開發(fā)工具概述 本設(shè)計(jì)采用的開發(fā)工具是 Quartus II,它是 ALTERA 公司提供的可編程邏輯器件的集成軟件,是該公司前一代可編程邏輯器件的集成開發(fā)軟件 MAX+Plus II 的更新?lián)Q代產(chǎn)品。 Quartus II 集成開發(fā)軟件支持可編程邏輯器件開發(fā)的整個(gè)過程,它提供一種與器件結(jié)構(gòu)無關(guān)的設(shè)計(jì)環(huán)境,使設(shè)計(jì)者能方便地進(jìn)行設(shè)計(jì)輸入、設(shè)計(jì)處理和器件編程。 Quartus II 集成開發(fā)軟件適合多種平臺的工作環(huán)境,支 持更多種類的可編程邏輯器件的開發(fā),同時(shí)也提供在單芯片可編程系統(tǒng) (SOPC)設(shè)計(jì)的綜合性環(huán)境和 SOPC 開發(fā)的基本設(shè)計(jì)工具。 Quartus設(shè)計(jì)工具完全支持 VHDL、 Verilog 的設(shè)計(jì)流程,其內(nèi)部嵌有 VHDL、 Verilog 邏輯綜合器。 Quartus II 也可以利用第三方的綜合工具,如 Mentor LeonardoSpectrum、 Synplify/Synplify Pro、 FPGACompiler11,并能直接調(diào)用這些工具。同樣, Quartus II 具備仿真功能,同時(shí)也支持第三方的仿真工具,如 ModelSim。 Quartus II 包括模塊化的編譯器。編譯器包括的功能模塊有分析 /綜合器 (Analysis amp。 Synthesis)、適配器 (Fitter)、裝配器 (Assembler)、時(shí)序分析器 (Timing Analyzer)、設(shè)計(jì)輔助模塊 (Design Assistant)、 EDA 網(wǎng)表文件生成器 (EDA Netlist Writer)和編輯數(shù)據(jù)接口 (Compiler Database Interface)等。可以通過選擇 Start Compilation 來運(yùn)行所有的編譯器模塊,也可以通過選擇 Start 單獨(dú)運(yùn)行 各個(gè)模塊。還可以通過選擇 Compiler Tool(Tools 菜單 ),在 Compiler Tool窗口中運(yùn)行該模塊來啟動(dòng)編譯器模塊。在 Compiler Tool 窗口中,可以打開該模塊的設(shè)置文件或報(bào)告文件,來打開其他相關(guān)窗口。 此外, Quartus II 還包含了許多十分有用的 LPM(Library of Parameterized Modules)模塊,它們是復(fù)雜或高級系統(tǒng)構(gòu)建的重要組成部分,在 SOPC 設(shè)計(jì)中被大量使用,也可在 Quartus II 普通設(shè)計(jì)文件中一起使用。 Altera 提供的 LPM 函數(shù)均基于 Altera 器件的結(jié)構(gòu)做了優(yōu)化設(shè)計(jì)。在許多實(shí)用情況下,必須使用宏功能模塊才能使用一些 Altera 特定器件的硬件功能。例如各類片上存儲(chǔ)器、 DSP 模塊、 LVDS 驅(qū)動(dòng)器、 PLL 以及 SERDES 和 DDIO 電路模塊等。圖 中所示是 Quartus II的設(shè)計(jì)流程圖,它顯示了 Quartus II 進(jìn)行自動(dòng)設(shè)計(jì)的各主要處理環(huán)節(jié)和設(shè)計(jì)流程。主要包括設(shè)計(jì)輸入、綜合或編譯、布局布線、時(shí)序分析、仿真、編程和配置。此外, Quartus II 集成軟件為設(shè)計(jì)流程的每個(gè)階段提供 Quartus II 圖形用戶界面、 EDA 工具界面以及命令行界面。可 以在整個(gè)流程中只使用這些界面中的一個(gè),也可以在設(shè)計(jì)流程的不同階段使用不同的界面。 圖 Quartus II 的設(shè)計(jì)流程圖 Quartus II 允許來自第三方的 EDIF 文件輸入,并提供了很多 EDA 軟件的接口, Quartus II支持層次化設(shè)計(jì),可以在一個(gè)新的編輯輸入環(huán)境中對使用不同輸入設(shè)計(jì)方式完成的模塊 (元件 )進(jìn)行調(diào)用,從而解決了原理圖與 HDL 混合輸入設(shè)計(jì)的問題。在設(shè)計(jì)輸入之后, Quartus II 的編譯器將給出設(shè)計(jì)輸入的錯(cuò)誤報(bào)告。 Quartus II 擁有性能良好的設(shè)計(jì)錯(cuò)誤定位器,用于確定文本或圖形設(shè)計(jì)中的錯(cuò)誤對于使用 HDL 的設(shè)計(jì),可以使用 Quartus II 帶有的 RTL Viewer 觀察綜合后的 RTL圖。在進(jìn)行編譯后,可對設(shè)計(jì)進(jìn)行時(shí)序仿真。在作仿真前,需要利用波形編輯器編輯一個(gè)波形激勵(lì)文件,用于仿真驗(yàn)證時(shí)的激勵(lì)。編譯和仿真經(jīng)檢測無誤后便可以將下載信息通過 Quartus II 提供的編程器下載入目標(biāo)器件中了。 三、 PS/2 鍵盤 協(xié)議與鍵盤接口電路設(shè)計(jì) PS/2 鍵盤協(xié)議 1. PS/2 的電氣特性 PS/2 協(xié)議的實(shí)現(xiàn)包括兩條信號線,以及 +5V 的電源與地線。信號線為 Clock、 Data,均為漏極開 路結(jié)構(gòu)。通常在連接時(shí),使用上拉電阻將這兩條線分別與電源相接,電阻值一般為 5~10KΩ,經(jīng)過電阻的上拉后這兩條信號線通常保持高電平,而且很容易下拉到地。任何使用 PS/2 的鍵盤或其它設(shè)備在連接時(shí)都要上拉。不過一般鍵盤中都已經(jīng)包含了上拉電阻。 PS/2 設(shè)備接口用于許多現(xiàn)代的鼠標(biāo)和鍵盤 ,它最初由 IBM 開發(fā) ,鍵盤可以有 6 腳的 miniDIN或 5 腳的 DIN 連接器。 最常見的為 6 腳 miniDIN,其引腳結(jié)構(gòu)和外形如圖 所示。 圖 PS/2 硬件接口外形圖 PS/2 設(shè)備有主從之分 ,現(xiàn)在廣泛使用的 PS/2 鍵盤鼠標(biāo)均工作在從設(shè)備方式下。 PS/2 接口的時(shí)鐘與數(shù)據(jù)線都是集電極開路結(jié)構(gòu) ,必須外接上拉電阻 ,一般上拉電阻設(shè)置在主設(shè)備中 ,主從設(shè)備之間的數(shù)據(jù)通信采用雙向同步方式傳輸 ,時(shí)鐘信號一般由從設(shè)備產(chǎn)生。 2. PS/2 協(xié)議的介紹 PS/2 允許主機(jī)與 PS/2 設(shè)備之間進(jìn)行雙向串位傳輸。主機(jī)與 PS/2 設(shè)備在任何時(shí)候只能傳輸 1個(gè)字節(jié)的命令或數(shù)據(jù)字。 PS/2 設(shè)備可以發(fā)送數(shù)據(jù)到主機(jī)而主機(jī)也可以發(fā)送數(shù)據(jù)到設(shè)備,但主機(jī)總是在總線上有優(yōu)先權(quán),即它可以在任何時(shí)候抑制來自于 PS/2 設(shè)備的通信,此時(shí)主機(jī)只要把時(shí)鐘線上的信號拉為低電平即可。 從 PS/2 設(shè)備發(fā)送到主機(jī)的數(shù)據(jù)在時(shí)鐘信號的下降沿被讀取,從主機(jī)發(fā)送到 PS/2 設(shè)備和數(shù)據(jù)在上升沿時(shí)被讀取。不管通信的方向如何, PS/2 設(shè)備總是產(chǎn)生時(shí)鐘信號。如果主機(jī)要發(fā)送數(shù)據(jù),則必須首先告訴設(shè)備開始產(chǎn)生時(shí)鐘信號。 所有的命令與數(shù)據(jù)字節(jié)均以幀為單位,每一幀包含了 11 或 12 位。這些位中包含的信息定義如下:1 個(gè)起始位(總是 0)、 8 個(gè)數(shù)據(jù)位(低位在前)、 1 個(gè)奇校驗(yàn)位、 1 個(gè)停止位(總是 1)以及 1 個(gè)應(yīng)答位(僅在主機(jī)向 PS/2 設(shè)備發(fā)送數(shù)據(jù)時(shí)才會(huì)用到, PS/2 設(shè)備向主機(jī)發(fā)送數(shù)據(jù)時(shí)不會(huì)用到這一位)。 PS/2 設(shè)備的最大時(shí)鐘 頻率是 33KHz,大多數(shù)設(shè)備工作在 10~20KHz。 PS/2 鍵盤接口電路的設(shè)計(jì) 鍵盤接口 1.?dāng)?shù)據(jù)包的結(jié)構(gòu) 鍵盤的狀態(tài)每改變一次 ,鍵盤至少會(huì)發(fā)出三個(gè)字節(jié)的數(shù)據(jù)包 ,在有鍵按下時(shí)會(huì)向主機(jī)發(fā)送該鍵 的通碼 (MakeCode),當(dāng)鍵釋放時(shí)發(fā)送斷碼 (BreakCode)。例如 :鍵“ A”的通碼為 0x1C,鍵“ A”的斷碼為 :0xF0,0x1C,因此當(dāng)要傳送鍵“ A”時(shí) ,鍵盤發(fā)送的數(shù)據(jù)包的代碼是 :0x1C,0xF0,0x1C。 2.接口的時(shí)序邏輯 PS/2 協(xié)議是一種雙向半雙工串行通信協(xié)議 ,時(shí)鐘信號由 鍵盤產(chǎn)生 ,最大時(shí)鐘頻率為 33kHz,推薦頻率在 15kHz。通信兩端通過 Clock 同步 ,通過 Data 交換數(shù)據(jù) ,任何一方如果想禁止另一方通信時(shí) ,只需將 Clock 拉到低電平。其傳輸時(shí)序根據(jù)傳輸?shù)姆较虿煌譃榘l(fā)送和接收兩個(gè)不同時(shí)序邏輯 ,圖 是從鍵盤到主機(jī)的時(shí)序圖。 圖 鍵盤發(fā)送數(shù)據(jù)時(shí)序圖 其中 :Start:起始位 ,總為‘ 0’ (低電平 ) Data0~ Data7:8 位數(shù)據(jù)位 (低位在前 ,高位在后 Parity:奇偶校驗(yàn)位 (為奇校驗(yàn) ) Stop:停止位 ,總為‘ 1’ (高電平 ) 當(dāng)鍵盤要向主機(jī)通信時(shí) ,鍵盤總是首先檢查時(shí)鐘線是否為高電平 ,如果不是則表明是主機(jī)正在通信 ,必須緩沖要發(fā)送的數(shù)據(jù)直到重新獲得總線的控制權(quán) (鍵盤有 16 個(gè)字節(jié)的緩沖區(qū) ),即等到時(shí)鐘線是高電平才能發(fā)送數(shù)據(jù)。而且從鍵盤到主機(jī)的數(shù)據(jù)只能在時(shí)鐘的下降沿時(shí)才能被讀取。當(dāng)主機(jī)到鍵盤進(jìn)行通信時(shí) ,主機(jī)會(huì)首先把時(shí)鐘線和數(shù)據(jù)線設(shè)置為 “請求發(fā)送”狀態(tài)。 具體方式為 :首先下拉時(shí)鐘線至少 100μs 來抑制通信 ,然后下拉數(shù)據(jù)線“請求發(fā)送” ,最后釋放時(shí)鐘。在此過程中 ,鍵盤在不超過 10μs 的間隔內(nèi)就會(huì)檢查這個(gè)狀態(tài)。當(dāng)鍵盤檢查到這個(gè)狀態(tài)時(shí) ,就開始產(chǎn)生時(shí)鐘。和鍵盤發(fā)送 的數(shù)據(jù)讀取方式不一樣 ,主機(jī)發(fā)送的數(shù)據(jù)必須在時(shí)鐘的上升沿讀取。 PS/2 接口的設(shè)計(jì)實(shí)現(xiàn) 本次設(shè)計(jì)采用了自上而下的模塊設(shè)計(jì)方法 ,考慮需要設(shè)計(jì)以下幾部分模塊 :串并轉(zhuǎn)換模塊 ,分揀接收模塊 ,控制模塊 ,封裝發(fā)送模塊等。 這幾部分的邏輯關(guān)系如圖 所示 : 圖 模塊間邏輯關(guān)系 串并轉(zhuǎn)換模塊主要是接收和發(fā)送傳輸數(shù)據(jù) ,能夠把串行數(shù)據(jù)轉(zhuǎn)變成所需要的并行數(shù)據(jù)。分揀接收模塊功能是把串并轉(zhuǎn)換模塊傳過來的數(shù)據(jù)包按照一定的要求進(jìn)行分揀提取 ,從而得到有用的信息??刂颇K是設(shè)計(jì)的核心 ,PS/2 接口是半雙工串行總線 ,因 此其發(fā)送和接收不能同時(shí)進(jìn)行 ,需要控 制模塊對其時(shí)序進(jìn)行嚴(yán)格的控制??刂颇K負(fù)責(zé)協(xié)調(diào)整個(gè)設(shè)計(jì)的全過程 ,在本設(shè)計(jì)中采用了狀態(tài)機(jī)的設(shè)計(jì)思路。封裝發(fā)送模塊和分揀接收模塊類似 ,只不過是把要傳送的命令數(shù)據(jù)轉(zhuǎn)變成 PS/2 協(xié)議要求的發(fā)送數(shù)據(jù)包的格式。 整個(gè)設(shè)計(jì)的流程圖如圖 所示 : 圖 設(shè)計(jì)流程圖 當(dāng)系統(tǒng)上電或復(fù)位時(shí) ,主設(shè)備首先向鍵盤發(fā)送初始化信號 ,在得到鍵盤的應(yīng)答信號后 ,系統(tǒng)進(jìn)入到了總線空閑狀態(tài) ,可以進(jìn)行數(shù)據(jù)的發(fā)送和接收 ,但主設(shè)備擁有更高的優(yōu)先級 ,正處在接收狀態(tài)時(shí)如果得到發(fā)送請求 ,會(huì)中斷數(shù)據(jù)接收 ,直接進(jìn)入數(shù)據(jù) 發(fā)送狀態(tài)。使用 Quartus II 對設(shè)計(jì)進(jìn)行了軟件仿真 ,按照模塊化的設(shè)計(jì)思路分別對每個(gè)模塊獨(dú)立進(jìn)行了仿真。 圖 是接收數(shù)據(jù)模塊的仿真時(shí)序圖。 圖 接收數(shù)據(jù)方針時(shí)序圖 硬件驗(yàn)證 硬件驗(yàn)證在 FPGA EP1C6開發(fā)板上 實(shí)現(xiàn) ,在系統(tǒng)中用到復(fù)位電路 ,電源電路 ,FPGA芯片 ,程序下載電路 ,PS/2 接口電路 ,數(shù)碼顯示電路等。 選取 Cyclone系列 EPF1C60240C8N型 FPGA器件進(jìn)行綜合 ,將綜合后的配置文件下載到開發(fā)板之后 ,系統(tǒng)上電 ,PS/2 設(shè)備初始化后在液晶顯示器上 正 確觀察到了鍵盤的輸入。 PS/ 2設(shè)備的 Clock(時(shí)鐘腳 ) 和 Data(數(shù)據(jù)腳 ) 都是集電極開路的 ,平時(shí)都是高電平。當(dāng) PS/ 2 設(shè)備等待發(fā)送數(shù)據(jù)時(shí) ,它首先檢查 Clock(時(shí)鐘腳 ) 以確認(rèn)其是否為高電平。如果是低電平 ,則認(rèn)為是 PC 機(jī)抑制了通訊 , 此時(shí)它必須緩沖需要發(fā)送的數(shù)據(jù)直到重新獲得總線的控制權(quán) (一般 PS/ 2鍵盤有 16個(gè)字節(jié)的緩沖區(qū) ,而 PS/ 2鼠標(biāo)只有一個(gè)緩沖區(qū)僅存儲(chǔ)最后一個(gè)要發(fā)送的數(shù)據(jù) ) 。如果 Clock(時(shí)鐘腳 ) 為高電平 ,PS/ 2 設(shè)備便開始將數(shù)據(jù)發(fā)送到 PC 機(jī)。 一般都是由 PS/2 設(shè)備產(chǎn)生時(shí)鐘信號。發(fā)送時(shí)一般都是按照數(shù)據(jù)幀格式順序發(fā)送。其中數(shù)據(jù)位在 Clock(時(shí)鐘腳 )為高電平時(shí)準(zhǔn)備好 , 在 Clock(時(shí)鐘腳 ) 的下降沿被 PC 機(jī)讀入。 PS/2 設(shè)備到 PC 機(jī)的通訊時(shí)序如圖 2 所示。當(dāng)時(shí)鐘頻率為 15kHz 時(shí) ,從 Clock(時(shí)鐘腳 ) 的上升沿到數(shù)據(jù)位轉(zhuǎn)變時(shí)間至少要 5μ s。數(shù)據(jù)變化到 Clock(時(shí)鐘腳 ) 下降沿的時(shí)間至少也有 5μ s,但不能大于 25μ s,這是由 PS/2通訊協(xié)議的時(shí)序規(guī)定的。如果時(shí)鐘頻率是其它值 ,參數(shù)的內(nèi)容應(yīng)稍作調(diào)整。 上述中傳輸?shù)臄?shù)據(jù)是指 對特定鍵盤的編碼或者對特定命令的編碼。一般采用第二套掃描碼集所規(guī)定的碼值來編碼。其中鍵盤碼分為通碼 (Make)和斷碼 (Break) 。通
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1