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

正文內(nèi)容

基于fpga的數(shù)字鐘設(shè)計(jì)畢業(yè)論文-文庫(kù)吧資料

2025-03-06 09:22本頁面
  

【正文】 如果 sig1 等于 1,那么 sig_ 就進(jìn)行循環(huán)移位,每個(gè)鐘周期循環(huán)左移一位。 第一個(gè)進(jìn)程是計(jì)數(shù)變量 counter 的計(jì)數(shù)進(jìn)程, 當(dāng) sig2 為 1 且 counter不為 11 時(shí), sig1 為 1 且 counter 開始記數(shù)。 end behav。 end if。 else scan_code=11111111。 else scan_code=11111111。)then scan_code=row amp。)then if(tmp=39。)then if(sig1=39。event and clky=39。 end process。 end if。)then =sig_。)then if(sig1=39。event and clky=39。 end process。 end if。 sig_(0)=jt。 for i in 3 downto 1 loop sig_(i)=sig_(i1)。139。139。 begin if(clky39。 end process。 end if。139。139。 counter=00。)then if(counter=11)then sig1=39。)then 計(jì)數(shù)進(jìn)程 if(sig2=39。event and clky=39。 tmp=row(0) and row(1) and row(2) and row(3)。 signal tmp,sig1,sig2:std_logic。 architecture behav of ajsm is signal sig_:std_logic_vector(3 downto 0)。 scan_code:out std_logic_vector(7 downto 0))。 row:in std_logic_vector(3 downto 0)。 use 。 use 。 鍵掃描的基本方法是將列線逐一置成低電平,然后讀行線輸入端口,如果行線中有低電平出現(xiàn),說明按鍵已經(jīng)確定,將行向量和列向量讀入鍵碼中即可。 ROW[3..0]是行輸入信號(hào),與鍵盤的行線相連, COM[3..0]是列輸出信號(hào),與鍵盤的列線相連。 18 圖 47 按鍵掃描模塊 CLKY 為輸入時(shí)鐘,該時(shí)鐘是分頻模塊分出的 4MHZ 的時(shí)鐘信號(hào),之所以在這里采用頻率高的時(shí)鐘信號(hào)就是因?yàn)殒I掃描是一個(gè)快過程,不需 要太慢的時(shí)鐘。一旦計(jì)數(shù)完成,抖動(dòng)已經(jīng)過去,不會(huì)發(fā)生重鍵現(xiàn)象了,這樣就去除了抖動(dòng)。 如果有按鍵抖動(dòng)的話, tem1 會(huì)在“ 0”和“ 1”之間變動(dòng)多次,但是計(jì)數(shù)過程不會(huì)停止,原因是計(jì)數(shù)由 sig2 的電平?jīng)Q定,而 sig2 一旦變成高電平,再要變成低電平,需要計(jì)數(shù)完成即 counter 等于“ 1111”時(shí)。 程序說明: 這段程序是實(shí)現(xiàn)按鍵消抖,在這里實(shí)現(xiàn)的比較簡(jiǎn)單,原理是當(dāng)有按鍵按下的時(shí)候, temp1 會(huì)變成低電平,這時(shí)把 sig2 變成高電平,如果此時(shí) counter 不為“ 1111”時(shí),內(nèi)部計(jì)數(shù)器計(jì)數(shù),從“ 0000”直到“ 1111”,當(dāng)計(jì)數(shù)到“ 1111”時(shí), key_pre 輸出高電平,同時(shí)計(jì)數(shù)器清零。 end process。 end if。139。 counter=0000。)then if(counter=1111)then sig2=39。 if(sig2=39。 end if。)then 17 sig2=39。)then if(sig2=39。)then if(tmp1=39。event and clk1=39。 key_pre=counter(0)and counter(1)and counter(2)and counter(3)。 begin sig1=row。 architecture behav of qudou is signal sig1,counter:std_logic_vector(3 downto 0)。 key_pre:out std_logic)。 entity qudou is port(clk1:in std_logic。 use 。 圖 46 去抖邏輯框圖 該電路的 VHDL 程序如下: library ieee。該模塊有一個(gè)時(shí)鐘輸入端口,輸入時(shí)鐘信號(hào)是分頻出來的 1KHZ的時(shí)鐘;有一個(gè)輸入端口與行線相連,用于輸入行線狀態(tài);一個(gè)輸出端口,用 于輸出有按鍵按下的信號(hào)。 圖 45 鍵盤接口電路 鍵盤接口的 VHDL 描述 本模塊用于當(dāng)有按鍵按下時(shí),采用軟件消抖的辦法去除按鍵抖動(dòng)。鍵盤掃描的過程事將列線逐列置成低電平,然后讀取行線狀態(tài),直到行 線中出現(xiàn)低電平,可知這時(shí)哪一列是低電平,然后將行線與列線的狀態(tài)裝入鍵碼寄存器,進(jìn)行按鍵譯碼,得到按下的按鍵的相應(yīng)編碼,這樣就完成了按鍵掃描的過程。行線與 按鍵的一個(gè)引腳相連,列線與按鍵的另一個(gè)引腳相連。本系統(tǒng)采用的就是這種行列式鍵盤 接口,相對(duì)個(gè)按鍵的鍵盤接口來說節(jié)省了 I/O 接口。 圖 44 分頻模塊仿真圖 校時(shí)控制模塊電路設(shè)計(jì)與實(shí)現(xiàn) 鍵盤接口電路原理 校時(shí)控制模塊在本系統(tǒng)中也就是鍵盤接口電路部分。經(jīng)分頻后輸出 1HZ 的標(biāo)準(zhǔn)秒信號(hào) CLK 4MHZ 的按鍵掃描信號(hào)、 1KHZ 的按鍵去抖信號(hào)和 500HZ 用于報(bào)時(shí)模塊的輸入信號(hào)。 圖 42 分頻電路模塊 分頻電路 石英晶體 振蕩電路 秒信號(hào) 14 圖 43 分頻模塊電路設(shè)計(jì) 其內(nèi)部結(jié)構(gòu)圖見圖 43。 圖 41 秒信號(hào)產(chǎn)生電路框圖 本系統(tǒng)使用的晶體振蕩器電路給數(shù)字鐘提供一個(gè)頻率穩(wěn)定準(zhǔn)確的40MHz 的方波信號(hào),其輸出至分頻電路。因此 , 這種振蕩電路輸出的是準(zhǔn)確度極高的信號(hào)。 13 4 單元電路設(shè)計(jì) 分頻模塊電路設(shè)計(jì)與實(shí)現(xiàn) 晶體振蕩器是構(gòu)成數(shù)字式時(shí)鐘的核心, 振蕩器的穩(wěn)定度及頻率的精度決定了數(shù)字鐘計(jì)時(shí)的準(zhǔn)確程度, 它保證了時(shí)鐘的走時(shí)準(zhǔn)確及穩(wěn)定。 時(shí)基電路可以由石英晶體振蕩電路構(gòu)成,如果晶振頻率為 1MHz,經(jīng)過 6次十分頻就可以得到秒脈沖信號(hào)。在控制信號(hào)中除了一般的校時(shí)信 號(hào)外,還有時(shí)鐘使能信號(hào)、時(shí)鐘清零信號(hào)。計(jì)數(shù)器的輸出分別經(jīng)譯碼器送數(shù)碼管顯示。計(jì)滿后各計(jì)數(shù)器清零 , 重新計(jì)數(shù)。 譯碼驅(qū) 動(dòng) 譯碼驅(qū)動(dòng) 譯碼驅(qū)動(dòng) 譯碼驅(qū)動(dòng) 譯碼驅(qū)動(dòng) 譯碼驅(qū)動(dòng) 時(shí)十位 計(jì)數(shù) 時(shí)個(gè)位 計(jì)數(shù) 分十位 計(jì)數(shù) 分個(gè)位 計(jì)數(shù) 秒十位 計(jì)數(shù) 秒個(gè)位 計(jì)數(shù) 校時(shí)控制電路 校分控制電路 分頻器電路 分頻器電路 晶體振蕩器電路 1HZ 11 圖 32 總體框架 數(shù)字鐘的工作原理 振蕩器產(chǎn)生穩(wěn)定的高頻脈沖信號(hào),作為數(shù)字鐘的時(shí)間基準(zhǔn),然后經(jīng)過分頻器輸出標(biāo)準(zhǔn)秒脈沖。 圖 31 數(shù)字鐘的一般組成框圖 本設(shè)計(jì)在上面數(shù)字鐘結(jié)構(gòu)的基礎(chǔ)上還加入了顯示年、月、日的功能,其顯示范圍為 2021年 1月 1日至 2099年 12月 31日。 主要包括時(shí)間基準(zhǔn)電路、計(jì)數(shù)器電路、控制電路、譯碼和顯示電路。通常使用石英晶體振蕩器電路構(gòu)成數(shù)字鐘。 3 數(shù)字鐘總體設(shè)計(jì)方案 數(shù)字鐘的構(gòu)成 數(shù)字鐘實(shí)際上是一個(gè)對(duì)標(biāo)準(zhǔn)頻率( 1HZ)進(jìn)行計(jì)數(shù)的計(jì)數(shù)電路。由于狀態(tài)機(jī)到 HDL語言有一種標(biāo)準(zhǔn)的對(duì)應(yīng)描述方式,所以這種輸入方式最后所能達(dá)到的工作速度和芯片利用率主要取決于綜合軟件;波形描述方式是基于真值表的一種圖形輸入方式,直接描述輸入與輸出的波形關(guān)系。一般大都使用成熟的 IP核和中小規(guī)模集成電路所搭成的現(xiàn)成電路,整體放到一片可編程邏輯器件的內(nèi)部去,所以硬件工作速度和芯片利用率很高,但是但項(xiàng)目很大的時(shí)候,該方法就顯得有些繁瑣;狀態(tài)機(jī)描述主要用來設(shè)計(jì)基于狀態(tài)機(jī)思想的時(shí)序電路。 MAX+plusII 圖形輸入方式只支持電路原理圖描述和波形描述兩種。可以分為電路原理圖描述,狀態(tài) 機(jī)描述和波形描述 3 9 種形式。用這種方式描述的項(xiàng)目最后所能達(dá)到的性能與設(shè)計(jì)人員的水平、經(jīng)驗(yàn)以及綜合軟件有很大的關(guān)系。具體的設(shè)計(jì)輸入方式有以下幾種: 。 CPLD/FPGA軟件設(shè)計(jì)可分為兩大塊:編程語言和編程工具。 最后將適配器產(chǎn)生的器件編程文件通過編程器或下載電纜載入到目標(biāo)芯片 CPLD/FPGA中。根據(jù)適配后的仿真模型,可以進(jìn)行適配后時(shí)序仿真,因?yàn)橐呀?jīng)得到器件的實(shí)際硬件特性(如 時(shí)延特性),所以仿真結(jié)果能比較精確的預(yù)期未來芯片的實(shí)際性能。 邏輯映射操作,包括底層器件配置、邏輯分割、邏輯優(yōu)化和布局布線。 ,仿真過程不涉及具體器件的硬件特性,是較為粗略的。 8 VHDL源代碼進(jìn)行綜合優(yōu)化處理,生成門級(jí)描述的網(wǎng)絡(luò)表文件,這是將高層次描述轉(zhuǎn)化為硬件電路的關(guān)鍵步驟。 ASIC 實(shí)現(xiàn) VHDL 代碼或圖形方式輸入 錯(cuò)誤 !未找到引用源。 CPLD/FPGA 實(shí)現(xiàn) 適配后仿真模型 錯(cuò)誤 !未找到引用源。 適配前時(shí)序仿真 錯(cuò)誤 !未找到引用源。 代碼級(jí)功能仿真 錯(cuò)誤 !未找到引用源。 系統(tǒng)劃分 錯(cuò)誤 !未找到引用源。這一步驟適用于大型設(shè)計(jì),因?yàn)閷?duì)于大型設(shè)計(jì)來說,在綜合前對(duì)源代碼仿真,就可以大大減少設(shè)計(jì)重復(fù)的次數(shù)和時(shí)間。 VHDL文件。 VHDL代碼,這是設(shè)計(jì)中最為普遍的輸入方式。 CPLD/FPGA系統(tǒng)設(shè)計(jì)的工作流程如圖 22所示。目前這種高層次的設(shè)計(jì)方法已被廣泛采用。IR主要由許多金屬線段構(gòu)成,這些金屬線段帶有可編程開關(guān),通過自動(dòng)布線實(shí)現(xiàn)各種電路的連接。 IR。 當(dāng) IOB控制的引腳被定義為輸出時(shí), CLB陣列的輸出信號(hào) OUT也可以有兩條傳輸途徑:一條是直接經(jīng) MUX送至輸出緩沖器,另一條是先存入輸出通路 D觸發(fā)器,再送至輸出緩沖器。緩沖器的輸出分 成兩路:一路可以直接送到 MUX,另一路經(jīng)延 CLB CLB CLB CLB CLB CLB B CLB CLB CLB CLB CLB CLB CLB 可編程開關(guān)矩 輸入輸出模塊 互連資源 6 圖 21 CLB基本結(jié)構(gòu) 時(shí)幾納秒(或者不延時(shí))送到輸入通路 D觸發(fā)器,再送到數(shù)據(jù)選擇器。 每個(gè) IOB控制一個(gè)引腳,它們可被配置為輸入、輸出或雙向 I/O功能。 IOB提供了器件引腳和內(nèi)部邏輯陣列之間的連接。另一方面,邏輯函數(shù)發(fā)生器 F和 G還可以作為器件內(nèi)高速 RAM或小的可讀寫存儲(chǔ)器使用,它由信號(hào)變換電路控制。 CLB中的邏輯函數(shù)發(fā)生器 F和 G均為查找表結(jié)構(gòu) ,其工作原理類似于ROM。 CLB中有許多不同規(guī)格的數(shù)據(jù)選擇器(四選一、二選一等),通過對(duì) CLB內(nèi)部數(shù)據(jù)選擇器的編程,邏輯函數(shù)發(fā)生器 G、 F和 H的輸出可以連接到 CLB輸出端 X或 Y,并用來選擇觸發(fā)器的激勵(lì)輸入信號(hào)、時(shí)鐘有效邊沿、時(shí)鐘使能信號(hào)以及輸出信號(hào)。這個(gè)函數(shù)發(fā)生器能實(shí)現(xiàn) 3輸入變量的各種組合函數(shù)。這兩個(gè)函數(shù)發(fā)生器是完全獨(dú)立的,均可以實(shí)現(xiàn) 4輸入變量的任意組合邏輯函數(shù)。 CLB中 3個(gè)邏輯函數(shù)發(fā)生器分別是 G、 F和 H,相應(yīng)的輸出是 G’ 、 F’和 H’。 FPGA的主要組成部分。這 3種可編程電路是:可編程邏輯模塊( CLBConfigurable Logic Block ) 、輸入 / 輸出模塊( IOBI/O Block )和互連資源( IR— Interconnect Resource) 。 FPGA基本結(jié)構(gòu) FPGA具有掩膜可編程門陣列的通用結(jié)構(gòu),它由邏輯功能塊排成陣列,并由可編程的互連資源連接這些邏輯功能塊 來實(shí)現(xiàn)不同的設(shè)計(jì)。使用 CPLA/FPGA開發(fā)數(shù)字電路,可以大大縮短設(shè)計(jì)時(shí)間,減少 PCB面積,提高系統(tǒng)的可靠性。它如同一張白紙或是一堆積木,工程師可以通過傳統(tǒng)的原理圖輸入或 硬件描述語言自由的設(shè)計(jì)一個(gè)數(shù)字系統(tǒng)。 4 2 FPGA簡(jiǎn)介 FPGA概述 FPGA是現(xiàn)場(chǎng)可編程門陣列( Field Programmable Gate Array) 的簡(jiǎn)稱,與之相應(yīng)的 CPLD是復(fù)雜可編程邏輯器件( Complex Programmable Logic
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1