《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > EDA與制造 > 設(shè)計應(yīng)用 > 具有學(xué)習(xí)功能的遙控機器人編碼芯片的ASIC設(shè)計
具有學(xué)習(xí)功能的遙控機器人編碼芯片的ASIC設(shè)計
來源:電子技術(shù)應(yīng)用2011年第3期
王小華1,,唐 寧2,,周松青3,,殷嚴(yán)剛1
1.廣西師范大學(xué),,廣西 桂林541004; 2.桂林電子科技大學(xué) 廣西 桂林 541004,; 3.解放軍63655部隊,,新疆 烏魯木齊841700
摘要: 提出一個具有地址碼學(xué)習(xí)功能的遙控機器人編碼芯片,它由振蕩電路,、時序產(chǎn)生電路,、按鍵防抖動電路、上電復(fù)位電路,、位同步輸出電路等模塊構(gòu)成,。該芯片通過地址碼學(xué)習(xí)請求按鍵(study)和控制功能請求按鍵(forward,、turbo、right)實現(xiàn)各種控制功能,,同時采用脈沖寬度調(diào)制技術(shù)(PWM),,降低了重碼率,減少了各用戶之間的碼間沖突并提高了同類芯片的可靠傳輸和接收,。
關(guān)鍵詞: 學(xué)習(xí) 遙控 編碼 ASIC
中圖分類號: TP335+.4
文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2011)03-0054-04
Decoder chip′s ASIC design of remote control robots with study function
Wang Xiaohua1,,Tang Ning2,Zhou Songqing2,,Yin Yangang1
1.Guangxi Normal University,,Guilin 541004,China,; 2.Guilin University Of Electronic Technology,,Guilin 541004,China,; 3.No.63655 Unit of PLA,,Urumqi 841700,China
Abstract: The remote control combat robots encoder chip with address study function, contains oscillation and timing generation circuit, signal sampling circuits, frame synchronization circuit, address code study and control drive circuit. The chip can carry out address code learning function, address code checking function, signal’s frame checking and drive actions of the remote control combat robot, such as going forward, going backward and corresponding combined functions. Moreover, it is low price ,stable performance,and practical value.
Key words : study,;remote control,;code;ASIC


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

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

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

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


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

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。