《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > EDA與制造 > 設(shè)計(jì)應(yīng)用 > 具有學(xué)習(xí)功能的遙控機(jī)器人編碼芯片的ASIC設(shè)計(jì)
具有學(xué)習(xí)功能的遙控機(jī)器人編碼芯片的ASIC設(shè)計(jì)
來(lái)源:電子技術(shù)應(yīng)用2011年第3期
王小華1,唐 寧2,周松青3,殷嚴(yán)剛1
1.廣西師范大學(xué),廣西 桂林541004; 2.桂林電子科技大學(xué) 廣西 桂林 541004; 3.解放軍63655部隊(duì),新疆 烏魯木齊841700
摘要: 提出一個(gè)具有地址碼學(xué)習(xí)功能的遙控機(jī)器人編碼芯片,它由振蕩電路、時(shí)序產(chǎn)生電路、按鍵防抖動(dòng)電路、上電復(fù)位電路、位同步輸出電路等模塊構(gòu)成。該芯片通過(guò)地址碼學(xué)習(xí)請(qǐng)求按鍵(study)和控制功能請(qǐng)求按鍵(forward、turbo、right)實(shí)現(xiàn)各種控制功能,同時(shí)采用脈沖寬度調(diào)制技術(shù)(PWM),降低了重碼率,減少了各用戶(hù)之間的碼間沖突并提高了同類(lèi)芯片的可靠傳輸和接收。
關(guān)鍵詞: 學(xué)習(xí) 遙控 編碼 ASIC
中圖分類(lèi)號(hào): TP335+.4
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 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ù)某一特定用戶(hù)要求和特定電子系統(tǒng)的需要而設(shè)計(jì)、制造的集成電路。ASIC按照設(shè)計(jì)方法的不同可分為全定制ASIC,半定制ASIC和可編程ASIC(也稱(chēng)為可編程邏輯器件)。本文所設(shè)計(jì)的遙控機(jī)器人編碼芯片是全定制ASIC芯片,先要定義編碼芯片上所有晶體管的幾何圖形和工藝規(guī)則,最后將設(shè)計(jì)結(jié)果交由IC廠家掩膜制造完成[1][2]。設(shè)計(jì)的編碼ASIC提高了遙控機(jī)器人的性能,由于采用了脈沖寬度調(diào)制技術(shù)(PWM),解決了同類(lèi)芯片電路中的碼間干擾,增強(qiáng)了系統(tǒng)工作的穩(wěn)定性,提高了安全性[3][4]。該芯片采用N阱0.5 ?滋m硅柵工藝,采用手工雙層金屬布線(xiàn),工藝成熟、穩(wěn)定可靠,芯片的面積利用率高、速度快、功耗低。
1 芯片功能定義
    在無(wú)線(xiàn)遙控系統(tǒng)領(lǐng)域里,編碼芯片和解碼芯片分別完成信號(hào)的功能編碼和解碼,并驅(qū)動(dòng)相應(yīng)的控制功能。本文設(shè)計(jì)的遙控機(jī)器人編碼芯片管腳應(yīng)用分布如圖1所示。設(shè)計(jì)的編碼芯片需完成地址碼學(xué)習(xí)請(qǐng)求和相應(yīng)的8個(gè)控制功能的編碼和發(fā)送,當(dāng)STUDY鍵按下時(shí),編碼芯片輸出端(DO)迅速發(fā)送地址碼學(xué)習(xí)請(qǐng)求信號(hào),當(dāng)STUDY松開(kāi)時(shí),且有控制功能鍵按下時(shí),編碼芯片輸出端(DO)就會(huì)發(fā)送對(duì)應(yīng)的8 bit控制功能請(qǐng)求信號(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í)請(qǐng)求輸入STUDY,用于地址碼學(xué)習(xí)功能請(qǐng)求,相對(duì)于其他請(qǐng)求功能,它具有最高優(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用于外接大阻值電阻,或接可變電阻,用來(lái)進(jìn)行系統(tǒng)頻率的調(diào)節(jié);電源VDD,地VSS,確定以后的遙控編碼芯片外部管腳及對(duì)應(yīng)功能見(jiàn)表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í)的過(guò)程中,編碼芯片向解碼芯片發(fā)送具有地址碼學(xué)習(xí)請(qǐng)求功能信號(hào),其中有16位地址碼為編碼芯片所要求解碼芯片學(xué)習(xí)的地址碼[5]。當(dāng)?shù)刂反a學(xué)習(xí)成功后,編碼芯片向解碼芯片發(fā)送具有控制功能的請(qǐng)求信號(hào),其中的16位地址碼必須與解碼芯片學(xué)習(xí)后的地址碼進(jìn)行判斷,如果相同,就進(jìn)行相應(yīng)的控制功能驅(qū)動(dòng),否則將此控制功能請(qǐng)求信號(hào)作無(wú)效信號(hào)處理。狀態(tài)位X1,X2分別為“01”和“11”時(shí)表示地址碼學(xué)習(xí)請(qǐng)求和控制功能驅(qū)動(dòng)請(qǐng)求。幀結(jié)構(gòu)中設(shè)置的功能位對(duì)應(yīng)遙控機(jī)器人的8個(gè)控制功能:向前(FORWARD)、向后(BACKWARD)、加速(TURBO)、向右(RIGHT)、向左(LEFT)、附加功能1(FUNC-TION1)、附加功能2(FUNCTION2)、附加功能3(FUNCTION3),并按照以上順序排列。另外,當(dāng)狀態(tài)為地址碼學(xué)習(xí)請(qǐng)求時(shí),該8位功能碼必須全為零。當(dāng)狀態(tài)為控制功能請(qǐng)求時(shí),功能碼自身必須具有一定的互斥性。例如,控制功能不能出現(xiàn)同時(shí)向左向右或同時(shí)向前向后,如果出現(xiàn)這種情況,則認(rèn)為出現(xiàn)編碼出錯(cuò),解碼部分將會(huì)丟棄該幀,這是符合實(shí)際情況的。因此在解碼芯片電路設(shè)計(jì)中,分別增加了地址碼學(xué)習(xí)時(shí)功能數(shù)據(jù)檢測(cè)位電路和控制功能驅(qū)動(dòng)時(shí)功能數(shù)據(jù)檢測(cè)電路。奇偶校驗(yàn)位采用偶校驗(yàn)方式,對(duì)功能數(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é)束,未檢測(cè)到結(jié)束位時(shí)同樣丟棄該幀。

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

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


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

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