国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

時序邏輯電路:時鐘分頻

電子森林 ? 來源:FPGA入門到精通 ? 作者:FPGA入門到精通 ? 2021-01-06 17:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

單片機一樣,FPGA開發板上也都會配有晶振用來生成板載時鐘。前一篇我們提到了小腳丫的固定板載時鐘頻率為12MHz,這個頻率實際上就是作為我們的時間參考基準。正如歌里唱的那樣:

嘀嗒嘀嗒嘀嗒嘀嗒

時針它不停在轉動

因此,小腳丫只要在通電之后,它的內部時鐘就會每隔83.8ns滴答一次。這個時間真的很快,連光速還沒來得及跑出小區大門就被掐斷了。那么問題來了:如果在某些應用場合中,我們不需要這么快的嘀嗒該怎么辦?比如,我們想讓小腳丫上的LED燈以可觀察的頻率閃爍,如1Hz,也就是1秒閃一下。

相信大家和我的想法一樣,就一個字:等。既然一秒鐘可以嘀嗒一千兩百萬次,那我們每次點亮LED之前就先等你跳一千兩百萬次好了,畢竟也不耗油。換句話說,就是把內部時鐘頻率放慢12,000,000倍。這個操作就叫做時鐘分頻,也就是我們今天要掌握的內容。

先說偶數分頻,也就是說將內部時鐘放慢的除數為偶數。在這里,我們只考慮占空比為50%的波形(高電平和低電平對半分)。圖1中,我們設定內部時鐘為我們的輸入頻率,也就是12MHz,那么如果想獲得一個6MHz的輸出頻率,只需要等第二次上沿信號即可,因此分頻除數為2。

b1519624-4628-11eb-8b86-12bb97331649.png

圖1

如果想得到更低的輸出頻率,比如1MHz,則除數調整12;如果1KHz,除數調成12000,依次類推。注意,這種方法只對除數為偶數的情況下才管用!以下是生成1Hz輸出的代碼,于是我們將除數調成了12,000,000。

moduleclkdivider(clock_in,clock_out);inputclock_in;outputregclock_out;reg[23:0]counter=24'd0;parameter DIVISOR = 24'd12000000;
always@(posedgeclock_in)begincounter<=?counter?+?24'd1;if(counter>=(DIVISOR-1))counter<=?24'clock_out<=?(counter2)?1'b1:1'b0;//條件賦值endendmodule

在代碼中我們注意到了這一行代碼:

reg[23:0] counter=24’0

這個實際上就是用于存儲小腳丫固定時鐘頻率的一個數據格式,至于為什么是24位寬直接參考圖2就可以。打開你們電腦里的計算器,調成碼農模式即可。

b1767cbe-4628-11eb-8b86-12bb97331649.png

圖2

再說奇數分頻。比如說我們想獲得一個4MHz的頻率,按道理說我們把分頻除數調成3即可。而實際上奇數分頻的故事還是稍微多一點。我們看一下圖3就明白了。

b1ca5460-4628-11eb-8b86-12bb97331649.png

圖3

不難發現,當除數為奇數時,此刻對應的時間為內部時鐘的下沿,如果僅靠上沿觸發的話,此時輸出是不會改變的。所以奇數分頻需要經歷上沿觸發和下沿觸發才能完成。還好,在Verilog里,我們先不用研究邊沿觸發的構造原理,只需要通過行為級描述即可直接完成指令:

always@(posedgeclk)//上沿觸發always @(negedge clk)    //下沿觸發

現在我們來看一個分頻倍數為3的例子。圖3中,不論輸出信號是高電平還是低電平,都只涵蓋了兩個邊沿信號,也就是說,不論是上沿還是下沿時鐘,我們只需要分別等待2次觸發后進行賦值即可。

moduleclk_div3(clk,clk_out);inputclk;outputclk_out;reg[1:0]pos_count,neg_count;wire [1:0] r_nxt;
always@(posedgeclk)//處理上沿時鐘觸發部分if(pos_count==2)//等待輸入時鐘上沿觸發2次    pos_count<=0;  else    pos_count <= pos_count +1;
always@(negedgeclk)//處理下沿時鐘觸發部分if(neg_count==2) //等待輸入時鐘下沿觸發2次    neg_count<=0;  else    neg_count<=neg_count+1;
assignclk_out=((pos_count==2)|(neg_count==2));//每等待2次觸發后進行賦值endmodule

了解了3倍分頻之后,如何實現通用的奇數分頻自然也就不在話下了,這一部分就交給愿意動手嘗試的朋友們去自行練習了。

最后,我們的任務是,讓小腳丫上的L1-L4這四個燈以2Hz的頻率閃爍,另外四個燈L5-L8分別以1Hz的頻率閃爍,看看能否實現呢?

責任編輯:xj

原文標題:基于FPGA的數字電路實驗6:時序邏輯電路之時鐘分頻

文章出處:【微信公眾號:FPGA入門到精通】歡迎添加關注!文章轉載請注明出處。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1660

    文章

    22412

    瀏覽量

    636313
  • 電路
    +關注

    關注

    173

    文章

    6076

    瀏覽量

    178407
  • 數字
    +關注

    關注

    1

    文章

    1700

    瀏覽量

    52552

原文標題:基于FPGA的數字電路實驗6:時序邏輯電路之時鐘分頻

文章出處:【微信號:xiaojiaoyafpga,微信公眾號:電子森林】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    CDC5801A:低抖動時鐘倍頻器與分頻器的卓越之選

    CDC5801A:低抖動時鐘倍頻器與分頻器的卓越之選 在電子工程師的日常設計工作中,時鐘信號的穩定性和精準度至關重要。今天,我們就來詳細探討一款功能強大的時鐘芯片——CDC5801A,
    的頭像 發表于 02-10 11:10 ?160次閱讀

    LMK01801雙時鐘分頻緩沖器:高精度時鐘解決方案

    LMK01801雙時鐘分頻緩沖器:高精度時鐘解決方案 引言 在電子設計領域,時鐘信號的精準分配和分頻對于系統的穩定運行至關重要。今天要給大家
    的頭像 發表于 02-09 11:10 ?161次閱讀

    【「龍芯之光 自主可控處理器設計解析」閱讀體驗】--LoongArch邏輯綜合、芯片設計

    TransferLevel,RTL)描述轉換為滿足功能、時序和面積要求的門級網表的過程。 按照流程,邏輯綜合通常可分為面向應用的專用集成電路(Application-Specific
    發表于 01-18 14:15

    RE時鐘高次諧波解決方案

    一前言時鐘信號是時序邏輯的基礎,它作為數字電路系統的心臟,在數字電路中具有重要意義。時鐘信號在數
    的頭像 發表于 12-23 11:34 ?389次閱讀
    RE<b class='flag-5'>時鐘</b>高次諧波解決方案

    vivado時序分析相關經驗

    vivado綜合后時序為例主要是有兩種原因導致: 1,太多的邏輯級 2,太高的扇出 分析時序違例的具體位置以及原因可以使用一些tcl命令方便快速得到路徑信息
    發表于 10-30 06:58

    時鐘移項電路加速模塊的設計

    FPGA引腳中,在基于邏輯的邊沿變化采集時并不能對準數據穩定的時刻,而不能正確采集到數據。為了在時鐘跳變時能對準數據的穩定時刻,通常在設計時可以采用以下方法:專用IP核延遲、鎖相環移相和門電路延遲。
    發表于 10-29 07:38

    ?CDC5801A低抖動時鐘倍頻/分頻器技術文檔總結

    CDC5801A器件提供從單端參考時鐘 (REFCLK) 到差分輸出對 (CLKOUT/CLKOUTB) 的時鐘乘法和分頻。乘法和分頻端子 (MULT/DIV0:1) 提供倍頻比和
    的頭像 發表于 09-19 14:35 ?794次閱讀
    ?CDC5801A低抖動<b class='flag-5'>時鐘</b>倍頻/<b class='flag-5'>分頻</b>器技術文檔總結

    咨詢符合國標GB/T 4728.12-2022的邏輯電路設計軟件

    背景 在大學教授《數字邏輯》,總是遇到繪邏輯電路圖的問題,想適配國家標準GB/T 4728.12-2022的邏輯電路,培養學生的家國情懷,但目前的軟件好像使用的都是IEEE標準,
    發表于 09-09 09:46

    FPGA時序分析工具TimeQuest詳解

    上述代碼所描述的邏輯電路在Cyclone IV E的EP4CE10F17C8(65nm)這個器件上能最高運行在多少頻率的時鐘?
    的頭像 發表于 08-06 14:54 ?4075次閱讀
    FPGA<b class='flag-5'>時序</b>分析工具TimeQuest詳解

    瑞薩RA系列FSP庫開發實戰指南(29)CGC(時鐘生成電路時鐘控制

    Circuit,中文譯為“時鐘生成電路”,或者也可以叫它“時鐘控制電路”。 13.1.1 時鐘源 我們學過《數字
    的頭像 發表于 08-05 14:02 ?3438次閱讀
    瑞薩RA系列FSP庫開發實戰指南(29)CGC(<b class='flag-5'>時鐘</b>生成<b class='flag-5'>電路</b>)<b class='flag-5'>時鐘</b>控制

    實用電子電路設計(全6本)——數字邏輯電路的ASIC設計

    由于資料內存過大,分開上傳,有需要的朋友可以去主頁搜索下載哦~ 本文以實現高速高可靠性的數字系統設計為目標,以完全同步式電路為基礎,從技術實現的角度介紹ASIC邏輯電路設計技術。內容包括:邏輯
    發表于 05-15 15:22

    時鐘電路的組成與設計要點介紹

    在數字電子系統的運行中,時鐘電路掌控著各部件協同工作的節奏。它通常由時鐘發生器、時鐘分頻器、時鐘
    的頭像 發表于 05-05 15:40 ?1755次閱讀

    FPGA時序約束之設置時鐘

    Vivado中時序分析工具默認會分析設計中所有時鐘相關的時序路徑,除非時序約束中設置了時鐘組或false路徑。使用set_clock_gro
    的頭像 發表于 04-23 09:50 ?1342次閱讀
    FPGA<b class='flag-5'>時序</b>約束之設置<b class='flag-5'>時鐘</b>組

    數字電路—22、時序邏輯電路

    時序電路邏輯功能可用邏輯表達式、狀態表、卡諾圖、狀態圖、時序圖和邏輯圖6種方式表示,這些表示方法在本質上是相同的,可以互相轉換
    發表于 03-26 15:03

    數字電路—16、觸發器

    觸發器是構成時序邏輯電路的基本單元電路。 觸發器具有記憶功能,能存儲一位二進制數碼。
    發表于 03-26 14:21