<s id="eoqoe"><xmp id="eoqoe">
<button id="eoqoe"><strong id="eoqoe"></strong></button>
<s id="eoqoe"><xmp id="eoqoe">
<button id="eoqoe"><strong id="eoqoe"></strong></button>
<wbr id="eoqoe"></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><label id="eoqoe"></label></wbr>
<button id="eoqoe"></button>
<wbr id="eoqoe"></wbr>
你的位置:首頁(yè) > 互連技術(shù) > 正文

利用單片機實(shí)現復雜的分立邏輯

發(fā)布時(shí)間:2024-12-17 責任編輯:lina

【導讀】在許多嵌入式系統應用中,通常都會(huì )使用分立式邏輯器件,例如 74'HC 系列。這些 邏輯器件的優(yōu)勢在于可以獨立于單片機(MCU)工作,并且響應速度比軟件快得多。但 是,這些器件會(huì )增加物料清單(BOM)并且需要占用額外的 PCB 面積。


開(kāi)發(fā)人員可利用 PIC16F13145 系列單片機中的可配置邏輯模塊(CLB)外設實(shí)現硬件中復雜的分立邏輯功能,從而精簡(jiǎn)物料清單(BOM)并開(kāi)發(fā)定制專(zhuān)用邏輯。


在許多嵌入式系統應用中,通常都會(huì )使用分立式邏輯器件,例如 74'HC 系列。這些 邏輯器件的優(yōu)勢在于可以獨立于單片機(MCU)工作,并且響應速度比軟件快得多。但 是,這些器件會(huì )增加物料清單(BOM)并且需要占用額外的 PCB 面積。


為了解決這一問(wèn)題,Microchip 的許多單片機都集成了一種名為可配置邏輯單元 (CLC)的外設(在 PIC? MCU 上)或名為可配置定制邏輯(CCL)的類(lèi)似外設(在 AVR? MCU 上)。這兩種外設都實(shí)現了軟件定義的定制邏輯,可以獨立于 CPU 執行。換句話(huà)說(shuō), 一旦設置了定制邏輯功能,其行為就獨立于單片機。 


但是,這兩種外設存在限制,即每個(gè)實(shí)例的邏輯數量非常小。每個(gè) CLC 大約相當于 一個(gè)查找表(LUT),而 CCL 相當于一個(gè)內部具有幾個(gè)獨立 LUT 的實(shí)例。這兩種外設的功 能非常強大,可用于開(kāi)發(fā)簡(jiǎn)單邏輯電路、將各種信號混合在一起以及與其他硬件外設相集成。例如,硬件按鈕去抖、WS2812 輸出生成和正交解碼這些示例都需要使用這兩種外設, 但單片機中這兩種外設的數量并不多,因此限制了應用的復雜度。 


為了支持更復雜的應用,PIC16F13145 系列單片機引入了一種名為可配置邏輯模塊 (CLB)的新型邏輯外設(如圖 1 所示)。請注意,CLB 并不會(huì )取代 CLC 或 CCL 外設,器件 可以同時(shí)配備 CLC/CCL 和 CLB。 


利用單片機實(shí)現復雜的分立邏輯

圖 1—— CLB 框圖 



PIC16F13145 系列單片機上的 CLB 包含四個(gè)邏輯組,每組包含八個(gè) BLE。不同邏輯 組的 BLE 之間彼此連接——每個(gè)邏輯組代表兩個(gè) GPIO 輸出和一個(gè)可選的 CPU 中斷。當工 作電壓為 5.5V 時(shí),BLE 的傳播時(shí)間典型值小于 6 ns。整個(gè)結構中的所有 BLE 共用一個(gè)公共 時(shí)鐘,其時(shí)鐘源與可選的時(shí)鐘分頻器一起在軟件中進(jìn)行配置。CLB 可以使用單片機的內部 時(shí)鐘源之一或外部提供的時(shí)鐘源。 


該外設從單片機的存儲器中進(jìn)行初始化,之后可通過(guò)外設引腳選擇(PPS)直接從 自身結構中控制引腳。用戶(hù)可通過(guò) PPS 重新分配用于硬件外設的 I/O 引腳,從而獲得更大 的設計靈活性。舉例來(lái)說(shuō),如果 SPI 時(shí)鐘先前使用 RA1,但使用 RA6 會(huì )更有利,那么便可 以通過(guò) PPS 重新映射引腳。 


CLB 中的其他元件包括專(zhuān)用的 3 位硬件定時(shí)器(帶解碼輸出)、用于輸入信號的邊 沿檢測器以及 32 位輸出寄存器(用于調試)。單片機上的其他獨立于內核的外設(CIP) 輸出可用作 CLB 的輸入,以便實(shí)現更復雜的設計。 


由于 CLB 比 CLC 或 CCL 復雜得多,因此 Microchip 開(kāi)發(fā)了一款名為 CLB 合成器的新 工具。CLB 合成器提供了一個(gè)用于配置邏輯的圖形界面,如下面的圖 2 所示。除了邏輯原語(yǔ)之外,該工具還支持更高級的邏輯模塊庫(可由用戶(hù)預先提供或定制)。 


與該圖形工具交互時(shí),后臺會(huì )自動(dòng)生成一個(gè) Verilog 模塊用于合成。如果開(kāi)發(fā)人員 更喜歡編寫(xiě)自己的 Verilog 或者已準備好該文件,則可以將其作為模塊直接導入工具。 


利用單片機實(shí)現復雜的分立邏輯

圖 2——已打開(kāi)相移鍵控(PSK)示例的 CLB 合成器 


CLB 合成器的輸出是一個(gè)匯編文件,其中包含用于設置 CLB 的比特流和一些用于將 CLB 配置為外設的源代碼。該工具可通過(guò) MPLAB?代碼配置器(MCC)或獨立在線(xiàn)工具運行。MCC 是一款代碼生成實(shí)用程序,允許用戶(hù)使用可視化界面來(lái)設置和配置單片機中的 外設。當硬件外設完成配置后,MCC 將生成初始化代碼和器件 API。 


在運行時(shí),使用板上硬件直接從程序存儲器加載 CLB 比特流。這種實(shí)現的好處在 于如果在程序運行時(shí)需要更改 CLB 配置,則可以使用存儲在器件存儲器中的不同比特流 重復執行加載過(guò)程。 


為了演示 CLB 的應用,我們創(chuàng )建了一系列用例示例。這里我們將討論兩個(gè)示例:7 段顯示轉換器和 SPI 至 WS2812 轉換器。用例示例可作為構件復制以用作完整解決方案的 一部分。這里旨在展示該外設的實(shí)用性以及它能夠為設計帶來(lái)哪些價(jià)值。 


第一個(gè)用例是 7 段顯示轉換器。7 段顯示器可通過(guò)一組普通的 I/O 引腳驅動(dòng),但標 準實(shí)現通常需要使用軟件定義的查找表將輸入數字轉換為適合顯示器的正確輸出模式。在 該實(shí)現中,CLB 充當硬件查找表。所需的輸出字符(0 到 F)從軟件加載到 CLB 輸入寄存 器中。顯示器的每個(gè)輸出段均由 LUT 控制,以將輸入映射到輸出。 


該用例示例在內部用于構建計時(shí)系統的新控制板。最初的用戶(hù)界面是在 20 世紀 80 年代使用 74'HC 系列邏輯開(kāi)發(fā)。使用 CLB 后,一個(gè) 20 引腳的單片機即可實(shí)現電路板上的 顯示和鍵盤(pán)邏輯,極大地精簡(jiǎn)了物料清單(BOM)。圖 3 并排給出了兩種方案以供比較。 


利用單片機實(shí)現復雜的分立邏輯

圖 3——原 PCB 與新 PCB 的并排比較。該示例由 Josh Booth 開(kāi)發(fā)。 


下一個(gè)示例是 SPI 至 WS2812 轉換器。WS2812 是一種單線(xiàn)串行協(xié)議,用于通過(guò)脈 寬調制控制 LED 陣列。


在本例中,SPI 硬件用作要發(fā)送到 LED 的數據的移位寄存器,而 CLB 用于將 SCLK 和 SDO 轉換為預期的輸出。 在本例中,這是通過(guò)單觸發(fā) 3 位計數器、帶使能功能的 D 鎖存器和 4 輸入 LUT 來(lái) 實(shí)現,如下面的圖 4 所示。該實(shí)現的技巧體現在 SPI 和 CLB 的時(shí)鐘源。SPI 時(shí)鐘設置為空 閑高電平、在上升沿改變狀態(tài)并以 WS2812 輸出的頻率(800 kHz)運行,而 CLB 的時(shí)鐘 源以前者 10 倍的頻率(8 MHz)運行。當 SCLK 為低電平時(shí),將觸發(fā) 3 位計數器并開(kāi)始計 數。當計數到 7(0b111)時(shí),3 位計數器將停止并保持為 0,直到時(shí)鐘脈沖的下一個(gè)低電 平周期為止。 


計數器的輸出與輸出數據的鎖存版本一起饋入 4 輸入 LUT。這將設置數據的輸出模 式,如圖 4 的右側所示。計數器復位后,計數器輸出將保持為 0 以完成循環(huán)。之后,可 根據需要發(fā)送 SPI 硬件中的下一個(gè)字節,重復該循環(huán)。 


利用單片機實(shí)現復雜的分立邏輯

圖 4——SPI 至 WS2812 轉換器框圖(由 Petre Teodor-Emilian 開(kāi)發(fā)) 


這兩個(gè)示例都證明了單片機內部分立邏輯的優(yōu)勢。硬件外設可將 CPU 從各種任務(wù) 中解放出來(lái),從而縮短響應時(shí)間并降低功耗,同時(shí)減少元器件數量。有了 CLB,之前無(wú)法 在單片機內部實(shí)現的復雜應用現在都可以順利開(kāi)發(fā)。目前,可前往 Microchip 直銷(xiāo)網(wǎng)站或 其他代理商處購買(mǎi) PIC16F13145 系列單片機來(lái)獲取 CLB。 


Robert Perkel 是 Microchip 的一名應用工程師。他主要負責編輯應用筆記,投稿文章和視頻等技術(shù)內容,以 及分析外設的用例和開(kāi)發(fā)代碼示例與演示。Perkel 畢業(yè)于弗吉尼亞理工大學(xué),獲得了計算機工程理學(xué)學(xué)士學(xué)位。

(來(lái)源:Microchip Technology Inc.,作者:8 位單片機業(yè)務(wù)部應用工程師Robert Perkel)

 

免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問(wèn)題,請聯(lián)系小編進(jìn)行處理。


我愛(ài)方案網(wǎng)


推薦閱讀:

借助熱插拔控制器,確保系統持續穩定運行

探究電路里0.1uF和0.01uF電容的共存之謎

為何混合型交流浪涌保護器是浪涌保護首選?

全局快門(mén)圖像傳感器選型指南:關(guān)鍵要點(diǎn)解析

協(xié)同創(chuàng )新,助汽車(chē)行業(yè)邁向電氣化、自動(dòng)化和互聯(lián)化的未來(lái)




特別推薦
技術(shù)文章更多>>
技術(shù)白皮書(shū)下載更多>>
熱門(mén)搜索
?

關(guān)閉

?

關(guān)閉

久久无码人妻精品一区二区三区_精品少妇人妻av无码中文字幕_98精品国产高清在线看入口_92精品国产自产在线观看481页
<s id="eoqoe"><xmp id="eoqoe">
<button id="eoqoe"><strong id="eoqoe"></strong></button>
<s id="eoqoe"><xmp id="eoqoe">
<button id="eoqoe"><strong id="eoqoe"></strong></button>
<wbr id="eoqoe"></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><label id="eoqoe"></label></wbr>
<button id="eoqoe"></button>
<wbr id="eoqoe"></wbr>