關(guān) 閉

新聞中心

EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 具有學(xué)習(xí)功能的遙控機(jī)器人編碼芯片的ASIC設(shè)計(jì)

具有學(xué)習(xí)功能的遙控機(jī)器人編碼芯片的ASIC設(shè)計(jì)

作者: 時(shí)間:2011-07-07 來源:網(wǎng)絡(luò) 收藏

ASIC是根據(jù)某一特定用戶要求和特定電子系統(tǒng)的需要而設(shè)計(jì)、制造的集成電路。ASIC按照設(shè)計(jì)方法的不同可分為全定制ASIC,半定制ASIC和可編程ASIC(也稱為可編程邏輯器件)。本文所設(shè)計(jì)的遙控機(jī)器人編碼芯片是全定制ASIC芯片,先要定義編碼芯片上所有晶體管的幾何圖形和工藝規(guī)則,最后將設(shè)計(jì)結(jié)果交由IC廠家掩膜制造完成[1][2]。設(shè)計(jì)的編碼ASIC提高了遙控機(jī)器人的性能,由于采用了脈沖寬度調(diào)制技術(shù)(PWM),解決了同類芯片電路中的碼間干擾,增強(qiáng)了系統(tǒng)工作的穩(wěn)定性,提高了安全性[3][4]。該芯片采用N阱0.5 ?滋m硅柵工藝,采用手工雙層金屬布線,工藝成熟、穩(wěn)定可靠,芯片的面積利用率高、速度快、功耗低。
1 芯片功能定義
在無線遙控系統(tǒng)領(lǐng)域里,編碼芯片和解碼芯片分別完成信號(hào)的功能編碼和解碼,并驅(qū)動(dòng)相應(yīng)的控制功能。本文設(shè)計(jì)的遙控機(jī)器人編碼芯片管腳應(yīng)用分布如圖1所示。設(shè)計(jì)的編碼芯片需完成地址碼學(xué)習(xí)請求和相應(yīng)的8個(gè)控制功能的編碼和發(fā)送,當(dāng)STUDY鍵按下時(shí),編碼芯片輸出端(DO)迅速發(fā)送地址碼學(xué)習(xí)請求信號(hào),當(dāng)STUDY松開時(shí),且有控制功能鍵按下時(shí),編碼芯片輸出端(DO)就會(huì)發(fā)送對應(yīng)的8 bit控制功能請求信號(hào),這8個(gè)控制功能信號(hào)包括:向前(FORWARD)、向后(BACKWARD)、加速(TURBO)、向右(RIGHT)、向左(LEFT)、附加功能1(FUNCTION1)、附加功能2(FUNCTION2)、附加功能3(FUNCTION3)。FORWARD、BACKWARD、TURBO、RIGHT、LEFT控制解碼芯片所屬載體的基本控制動(dòng)作,附加功能1~附加功能3可以用作功能拓展,例如機(jī)器人的前后燈亮滅控制,輪子自動(dòng)收起等,相應(yīng)可以擴(kuò)展出多種實(shí)際應(yīng)用?;谝陨匣驹O(shè)想可確定芯片應(yīng)具有的基本輸入輸出:1個(gè)清零控制端RESET;1個(gè)地址碼學(xué)習(xí)請求輸入STUDY,用于地址碼學(xué)習(xí)功能請求,相對于其他請求功能,它具有最高優(yōu)先權(quán)。8個(gè)控制功能輸入:向前(FORWARD)、向后(BACKWARD)、加速(TURBO)、向右(RIGHT)、向左(LEFT)、附加功能1(FUNCTION1)、附加功能2(FUNCTION2)、附加功能3(FUNCTION3),用以確定控制功能信號(hào);1個(gè)工作狀態(tài)輸出端LO,外接一個(gè)發(fā)光管用于表示編碼芯片是否處于工作狀態(tài);1個(gè)幀信號(hào)發(fā)送端DO;另外內(nèi)部振蕩電路需要外接大電阻,需要設(shè)置振蕩輸入和輸出管腳OSCI、OSCO用于外接大阻值電阻,或接可變電阻,用來進(jìn)行系統(tǒng)頻率的調(diào)節(jié);電源VDD,地VSS,確定以后的遙控編碼芯片外部管腳及對應(yīng)功能見表1。

2 信號(hào)的幀結(jié)構(gòu)
遙控機(jī)器人編碼芯片的幀結(jié)構(gòu)如圖2所示,它由同步碼、16位地址碼、2位狀態(tài)碼、8位功能碼、奇偶校驗(yàn)碼及結(jié)束位32個(gè)碼元構(gòu)成,設(shè)計(jì)中的基帶碼型以脈沖寬度調(diào)制(PWM)技術(shù)采用占空比3/4的矩形脈沖表示“1”,占空比1/4的矩形脈沖表示“0”(圖3)。幀同步碼是一個(gè)幀周期信號(hào)的標(biāo)志,幀同步位為“1110”; 幀結(jié)構(gòu)中有16位地址位,在地址碼學(xué)習(xí)的過程中,編碼芯片向解碼芯片發(fā)送具有地址碼學(xué)習(xí)請求功能信號(hào),其中有16位地址碼為編碼芯片所要求解碼芯片學(xué)習(xí)的地址碼[5]。當(dāng)?shù)刂反a學(xué)習(xí)成功后,編碼芯片向解碼芯片發(fā)送具有控制功能的請求信號(hào),其中的16位地址碼必須與解碼芯片學(xué)習(xí)后的地址碼進(jìn)行判斷,如果相同,就進(jìn)行相應(yīng)的控制功能驅(qū)動(dòng),否則將此控制功能請求信號(hào)作無效信號(hào)處理。狀態(tài)位X1,X2分別為“01”和“11”時(shí)表示地址碼學(xué)習(xí)請求和控制功能驅(qū)動(dòng)請求。幀結(jié)構(gòu)中設(shè)置的功能位對應(yīng)遙控機(jī)器人的8個(gè)控制功能:向前(FORWARD)、向后(BACKWARD)、加速(TURBO)、向右(RIGHT)、向左(LEFT)、附加功能1(FUNC-TION1)、附加功能2(FUNCTION2)、附加功能3(FUNCTION3),并按照以上順序排列。另外,當(dāng)狀態(tài)為地址碼學(xué)習(xí)請求時(shí),該8位功能碼必須全為零。當(dāng)狀態(tài)為控制功能請求時(shí),功能碼自身必須具有一定的互斥性。例如,控制功能不能出現(xiàn)同時(shí)向左向右或同時(shí)向前向后,如果出現(xiàn)這種情況,則認(rèn)為出現(xiàn)編碼出錯(cuò),解碼部分將會(huì)丟棄該幀,這是符合實(shí)際情況的。因此在解碼芯片電路設(shè)計(jì)中,分別增加了地址碼學(xué)習(xí)時(shí)功能數(shù)據(jù)檢測位電路和控制功能驅(qū)動(dòng)時(shí)功能數(shù)據(jù)檢測電路。奇偶校驗(yàn)位采用偶校驗(yàn)方式,對功能數(shù)據(jù)位進(jìn)行校驗(yàn),當(dāng)功能數(shù)據(jù)位出現(xiàn)偶數(shù)個(gè)有效位(高電位“1”)時(shí),校驗(yàn)位為低電位“0”;當(dāng)功能數(shù)據(jù)位出現(xiàn)奇數(shù)個(gè)有效位時(shí),校驗(yàn)位為高電平“1”,奇偶校驗(yàn)位為幀中第31位。結(jié)束位為一位高電位“1”,表示一幀的結(jié)束,未檢測到結(jié)束位時(shí)同樣丟棄該幀。

3 編碼芯片設(shè)計(jì)
遙控機(jī)器人編碼芯片由振蕩電路、時(shí)序產(chǎn)生電路、按鍵防抖動(dòng)電路、上電復(fù)位電路(包含移位計(jì)數(shù)和狀態(tài)機(jī)電路、控制功能信號(hào)的鎖存電路、地址碼學(xué)習(xí)請求信號(hào)輸出電路、控制功能請求輸出電路)、位同步輸出電路等模塊構(gòu)成。編碼系統(tǒng)框圖如圖4所示。編碼芯片模塊主要有兩大功能,功能一:發(fā)送地址碼請求信號(hào),為了使編碼芯片與相應(yīng)的解碼芯片形成一一對稱的地址碼學(xué)習(xí)關(guān)系,首先保證解碼芯片是在地址碼學(xué)習(xí)允許的情況下(SRC按下),然后按下地址碼學(xué)習(xí)請求按鍵STUDY,編碼芯片輸出端DO就會(huì)輸出地址學(xué)習(xí)請求功能的32幀周期信號(hào)“11101010101010101010010000000001”的編碼信號(hào)“1110-1110-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1000-1110-1000-1000-1000-1000-1000-1000-1000-1000-1000-1110”,解碼芯片接收到請求信號(hào)后進(jìn)行解碼,然后進(jìn)行檢測和判斷,再進(jìn)行地址碼學(xué)習(xí),將解碼芯片的16位地址鎖存器固定為“1010101010101010”。功能二:地址碼學(xué)習(xí)成功之后,分別松開SRC和STUDY按鍵,根據(jù)需要輸入8位控制功能信號(hào),編碼芯片將功能控制幀周期信號(hào)進(jìn)行編碼,然后再輸出,發(fā)送給解碼芯片,解碼芯片再進(jìn)行解碼驅(qū)動(dòng)相應(yīng)的控制功能。如果無任何輸入狀態(tài),編碼芯片輸出零信號(hào)的編碼信號(hào)。其整個(gè)流程如圖5所示。最后編碼系統(tǒng)完成由地址碼學(xué)習(xí)請求和控制功能請求信號(hào)的編碼發(fā)送。

4 各模塊電路設(shè)計(jì)和功能仿真
根據(jù)遙控機(jī)器人編碼模塊總體設(shè)計(jì)框圖,在Quartus II環(huán)境下,使用硬件描述語言Verilog-HDL及原理圖對整個(gè)編碼系統(tǒng)各模塊進(jìn)行行為級描述,最后通過Synplify軟件對硬件描述語言Verilog -HDL進(jìn)行綜合,得到門級電路。圖6為編碼系統(tǒng)的核心頂層模塊組合,其中fangdd為按鍵輸入信號(hào)防抖動(dòng)模塊,clk_div128k為分頻模塊,為系統(tǒng)提供頻 率為2 kHz的時(shí)鐘;fenpin_count是四進(jìn)制加法計(jì)數(shù)器和clk_2k的四分頻模塊;send1是請求信號(hào)的位同步模塊,其同步頻率為512 Hz,位同步信號(hào)以幀周期形式輸出, code1_4是幀周期信號(hào)的碼元編碼模塊,將原代碼編碼成適合信道中傳輸和接收的基帶信號(hào)。


完成編碼芯片各模塊的行為級描述之后,進(jìn)行功能仿真驗(yàn)證。首先按下reset鍵復(fù)位清零,使芯片中所有的寄存器和鎖存器置零,然后發(fā)送一個(gè)地址碼學(xué)習(xí)請求信號(hào)(study鍵按下,相對于控制功能請求來說,具有更高的優(yōu)先級),此時(shí)send1模塊判斷信號(hào)為地址碼學(xué)習(xí)請求,然后send1的輸出端輸出具有學(xué)習(xí)請求功能的幀周期信號(hào)“1-1-1-0-1-0-1-0-1-0-1-0-1-0-1-0-1-0-1-0-0-1-0-0-0-0-0-0-0-0-0-1”。其中前4位“1-1-1-0”為幀頭信號(hào);第5位至第20位為發(fā)送出去的16位地址碼;第21位和第22位為請求狀態(tài)位,“01”表示地址碼學(xué)習(xí)請求,“11”表示功能控制請求,此時(shí)為地址碼學(xué)習(xí)請求狀態(tài),即為“01”;第23位至第30位為功能數(shù)據(jù)位,由于此時(shí)為地址碼學(xué)習(xí)請求狀態(tài),故該8位功能數(shù)據(jù)位為零;第31位為奇偶校驗(yàn)位,是用于判斷功能數(shù)據(jù)位的奇偶情況;第32位為結(jié)束位,是幀周期結(jié)束標(biāo)志。然后經(jīng)過code1-4模塊進(jìn)行碼元編碼輸出,由仿真結(jié)果可知相應(yīng)的碼元為“1110-1110-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1110-1000-1000-1110-1000-1000-1000-1000-1000-1000-1000-1000-1000-1110”。隨后在沒有地址碼學(xué)習(xí)請求時(shí),輸入控制功能信號(hào),輸出的幀周期信號(hào)與地址學(xué)習(xí)請求幀周期相同,不同之處是:其一,地址碼與原來地址學(xué)習(xí)請求發(fā)送的地址碼一模一樣,它是用于與解碼芯片學(xué)習(xí)后的地址碼進(jìn)行比較判斷,并不是用于地址碼學(xué)習(xí)之用;其二,功能數(shù)據(jù)位是相應(yīng)的控制功能輸入信號(hào),并非全為零。此仿真過程中,輸入了地址碼學(xué)習(xí)請求、向右加速前進(jìn)請求和向左后退請求,輸出端口分別輸出了相應(yīng)的幀周期信號(hào),達(dá)到了設(shè)計(jì)效果。
5 編碼芯片的硬件驗(yàn)證
軟件仿真是驗(yàn)證系統(tǒng)電路設(shè)計(jì)正確性的第一道保障,但它只是對實(shí)際情況的一種軟件模擬,不能替代實(shí)際的硬件驗(yàn)證。在ASIC設(shè)計(jì)過程中,常常需要對前端設(shè)計(jì)做FPGA原型驗(yàn)證來確保設(shè)計(jì)的實(shí)際可行性。本平臺(tái)的主控制芯片采用了ATERA公司研發(fā)的Cyclone II系列EP2C8Q208N再加上EPCS4配置芯片。在Quartus II中分別將編、解碼芯片的核心電路圖(數(shù)字電路)輸入、輸出管腳絆定并進(jìn)行編譯,生成相應(yīng)的*.pof文件,部分在可編程邏輯器件中無法實(shí)現(xiàn)的模擬電路部分被簡化掉,因?yàn)檫@些改變不會(huì)影響整個(gè)編解碼方案的功能。另外在下載界面中選擇AS模式(Actice Serial programming),通過串口下載線,將*.pof文件直接下載到EPCS4芯片中,然后主控制芯片EP2C8Q208C8N將調(diào)用配置芯片EPCS4中的軟硬件數(shù)據(jù),對整個(gè)編解碼電路進(jìn)行相關(guān)的數(shù)據(jù)處理。系統(tǒng)所需的時(shí)鐘信號(hào)clk_2KHz、clk_512Hz、clk_128Hz都是由該核心開發(fā)板上的晶振提供的50 MHz分頻而來的。為了成功完成編碼芯片的FPGA硬件驗(yàn)證,先制作10個(gè)輸入(RESET、STUDY、FOR-WARD、BACKWARD、TURBO、RIGHT、LEFT、F1、F2、F3)的外圍控制電路,然后將編碼芯片的核心電路下載到目標(biāo)芯片中。核心開發(fā)板上綁定的10個(gè)輸入端口分別用導(dǎo)線連接對應(yīng)的外圍控制電路的10個(gè)接口,輸出端(data out)接入示波器(安捷倫公司的存儲(chǔ)示波器:Agilent 1 160 A 600 M)信號(hào)輸入接口。先后按下外圍電路地址碼學(xué)習(xí)請求按鍵study和控制功能請求按鍵(forward、turbo、right),然后利用示波器分別抓取了地址碼學(xué)習(xí)請求和“向右加速前進(jìn)”控制功能請求信號(hào)的編碼波形。觀察波形可知,編碼芯片的FPGA驗(yàn)證系統(tǒng)與編碼芯片的T-spice仿真一樣,都能正確無誤地完成地址碼學(xué)習(xí)請求功能和控制功能請求功能,證明了編碼芯片電路設(shè)計(jì)的實(shí)際可行性。
6 版圖設(shè)計(jì)
遙控機(jī)器人編碼芯片的版圖設(shè)計(jì)采用N阱0.5 ?滋m硅柵工藝,其邏輯控制部分的最小線寬為0.5 ?滋m。為了使編碼芯片版圖在面積和性能上最優(yōu)化,整個(gè)版圖設(shè)計(jì)是調(diào)用預(yù)先設(shè)計(jì)好的各單元版圖模塊在taner-pro軟件上通過全手工布局布線的方式完成,大大減小了芯片面積。編碼芯片有16個(gè)輸入輸出壓焊塊,MOS管及阻容元件近5 591個(gè),版圖總面積為1.241 mm×0.950 mm。解編碼芯片有22個(gè)輸入輸出壓焊塊,MOS管及阻容元件近6 282個(gè),版圖總面積為1.310 mm×0.941 mm。最后對遙控機(jī)器人編碼芯片的版圖進(jìn)行了整體的設(shè)計(jì)規(guī)則檢查(DRC),同時(shí)將版圖萃取的文件(bianma.spc和jiema.spc)與相應(yīng)原理圖萃取的文件(bianma.sp和jiema.sp)進(jìn)行LVS(版圖與原理圖的一致性檢查)對比,結(jié)果一致[6]。最后提取GDS II文檔。
遙控機(jī)器人編碼芯片的研制,提高了集成度,比同類編碼芯片的外接元器件少,適合開發(fā)各種低成本遙控報(bào)警器及遙控系統(tǒng)。在具體的應(yīng)用中,只要增強(qiáng)無線射頻有效距離,就可將它移植到遠(yuǎn)距離工作的工業(yè)遙控操作系統(tǒng)以及遙控作戰(zhàn)機(jī)器人、遙控裝甲車和無人駕駛戰(zhàn)斗機(jī)中,并具有很好的發(fā)展前景。
參考文獻(xiàn)
[1] 劉麗華,辛德祿,李本俊.專用集成電路設(shè)計(jì)方法[M].北京:北京郵電大學(xué)出版社,2001.
[2] 楊凱,崔炳哲.數(shù)字邏輯電路的ASIC設(shè)計(jì)[M].北京:科學(xué)出版社,2004.
[3] 肖景和,趙健.無線電遙控組件及其應(yīng)用電路[M].人民郵電出版社,1997.
[4] 何書森.實(shí)用遙控電路原理與設(shè)計(jì)速成[M].福州:福建科學(xué)技術(shù)出版社,2002.
[5] 王小華.具有學(xué)習(xí)功能的遙控賽車解碼器的ASIC設(shè)計(jì)[J].北京:航天控制,2009(5).
[6] 廖裕評,陸瑞強(qiáng)著.Tanner Pro集成電路設(shè)計(jì)與布局實(shí)戰(zhàn)指導(dǎo)[M].北京:科學(xué)出版社,2004.



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉