亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于EDA技術(shù)的PS/2接口電路設(shè)計

        2014-03-14 02:11:02孫孟方
        電腦與電信 2014年5期
        關(guān)鍵詞:設(shè)備設(shè)計

        王 勇 宋 瀟 孫孟方

        (1.河南科技大學(xué)電氣工程學(xué)院,河南 洛陽 471023;

        2.中國航空工業(yè)集團公司洛陽電光設(shè)備研究所,河南 洛陽 471009)

        基于EDA技術(shù)的PS/2接口電路設(shè)計

        王 勇1宋 瀟1孫孟方2

        (1.河南科技大學(xué)電氣工程學(xué)院,河南 洛陽 471023;

        2.中國航空工業(yè)集團公司洛陽電光設(shè)備研究所,河南 洛陽 471009)

        基于EDA技術(shù),使用FPGA芯片和VHDL語言,設(shè)計了一種PS/2設(shè)備接口電路。介紹了硬件連接、通信協(xié)議、設(shè)計過程及仿真結(jié)果。采用自頂向下的設(shè)計思路,充分發(fā)揮EDA技術(shù)的優(yōu)勢,大大縮短了設(shè)計周期。軟件仿真及硬件調(diào)試表明,設(shè)計中的各個模塊之間能夠正確地傳送數(shù)據(jù),性能穩(wěn)定,達到了預(yù)期目標。

        PS/2接口;FPGA;VHDL;通信協(xié)議

        圖1 PS/2接口外圍硬件電路

        1.引言

        PS/2作為常用的人機接口,在嵌入式系統(tǒng)中有著廣泛應(yīng)用。例如PS/2鍵盤內(nèi)含自動去抖功能,軟硬件開發(fā)簡便,價格便宜,通用性強[1]?;贔PGA的EDA技術(shù)在近些年發(fā)展迅速,正逐漸成為電子系統(tǒng)設(shè)計的主流,設(shè)計人員利用它可以設(shè)計出自定義功能的專用集成電路,縮短了開發(fā)周期,降低了開發(fā)成本。FPGA還具有靜態(tài)可重復(fù)編程和動態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件功能可以像軟件一樣通過編程來修改。VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口,除了含有具有硬件特征的語句外,其語言形式、描述風(fēng)格與句法類似于一般的計算機高級語言。VHDL程序的結(jié)構(gòu)特點是將一項工程設(shè)計分成外部接口部分和內(nèi)部結(jié)構(gòu)部分,一旦內(nèi)部開發(fā)完成,其它的設(shè)計可以直接調(diào)用這個實體。因此采用VHDL硬件描述編程語言,在FPGA系統(tǒng)中嵌入PS/2設(shè)備接口電路,在產(chǎn)品開發(fā)中是可行和必要的。

        2.PS/2接口及通信協(xié)議

        2.1 PS/2接口

        物理上的PS/2接口有兩種連接類型,即5腳的DIN和6腳的MINI-DIN。實質(zhì)上,這兩種類型都只有4個腳有意義,它們分別是1腳數(shù)據(jù)(data)、3腳電源地(GND)、4腳電源(VCC)和5腳時鐘(clk)。在PS/2設(shè)備與主機的物理連接上只要保證這四根線一一對應(yīng)即可。PS/2設(shè)備靠主機提供+5V電源,另外兩個腳clk和data都是集電極開路的,需要在外圍硬件設(shè)計上進行上拉,相應(yīng)電路如圖1所示。

        2.2 通信協(xié)議

        PS/2接口遵循一種雙向同步串行通信協(xié)議。PS/2設(shè)備可以發(fā)送數(shù)據(jù)到主機,主機也可以發(fā)送數(shù)據(jù)到PS/2設(shè)備,主機在總線上有優(yōu)先控制權(quán),它可以在任何時候抑制來自于PS/2設(shè)備的通信。PS/2設(shè)備發(fā)送到主機的數(shù)據(jù)在時鐘信號的下降沿被讀取;主機發(fā)送到PS/2設(shè)備的數(shù)據(jù)在上升沿被讀取。不管通信的方向怎樣,PS/2設(shè)備總是產(chǎn)生時鐘信號,最大的時鐘頻率是33KHz,一般設(shè)計為15KHz左右。通信數(shù)據(jù)安排在字節(jié)中,每個字節(jié)為一幀,包含了11或12位,如圖2所示。其中第1位是起始位(低有效),緊跟8個數(shù)據(jù)位(低位在前),第10位為校驗位(奇校驗),第11位為停止位(高有效),第12位為應(yīng)答位(僅用在主機對設(shè)備的通信中)。若數(shù)據(jù)中包含偶數(shù)個“1”,校驗位置“1”;若數(shù)據(jù)中包含奇數(shù)個“1”,校驗位置“0”。數(shù)據(jù)位中“1”的個數(shù)加上校驗位為奇數(shù),這可用來檢測傳輸過程是否有錯。當主機發(fā)送數(shù)據(jù)給PS/2設(shè)備時,設(shè)備回送一個信號來應(yīng)答數(shù)據(jù)包,表示已經(jīng)收到,該位不會出現(xiàn)在設(shè)備發(fā)送數(shù)據(jù)到主機的過程中。下面以設(shè)備到主機的數(shù)據(jù)傳輸過程為例闡述PS/2的通信過程[2]。

        當PS/2設(shè)備等待發(fā)送數(shù)據(jù)時,它首先檢查時鐘以確認它是否為高電平,如果不是,則說明主機抑制了通信,設(shè)備必須緩沖任何要發(fā)送的數(shù)據(jù)直到重新獲得總線的控制權(quán);如果時鐘此時為高電平,設(shè)備則可以傳送數(shù)據(jù)。每位在時鐘的下降沿被主機讀入,通信時序如圖2所示。當時鐘為高時,數(shù)據(jù)線改變狀態(tài),在時鐘信號下降沿,數(shù)據(jù)被鎖存。從時鐘脈沖的上升沿到一個數(shù)據(jù)傳送的時間至少需要5μs。數(shù)據(jù)變化到時鐘脈沖的下降沿的時間也至少需要5μs,這個定時應(yīng)該嚴格遵循。在停止位發(fā)送后,設(shè)備在發(fā)送下一幀數(shù)據(jù)前至少應(yīng)該等待50ms,這是因為主機在處理接收字節(jié)時抑制了發(fā)送。

        圖2 PS/2設(shè)備到主機通信時序

        2.3 PS/2設(shè)備返回值介紹

        PS/2設(shè)備(以鍵盤為例)的處理器如果發(fā)現(xiàn)有鍵被按下或釋放將發(fā)送掃描碼信息到主機。掃描碼有兩種不同的類型:通碼和斷碼。當某鍵被按下則發(fā)送通碼,當該鍵被釋放則發(fā)送斷碼,每個按鍵被分配了唯一的通碼和斷碼。這樣主機通過查找掃描碼就可以識別按鍵。一整套的通斷碼組成了掃描碼集,目前常用的有三套標準的掃描碼集,現(xiàn)代的PS/ 2鍵盤幾乎均默認使用第二套掃描碼。設(shè)計者不用總是通過查表來找出按鍵的斷碼,在通碼和斷碼之間存在著必然的聯(lián)系。多數(shù)第二套斷碼有兩字節(jié)長,第一個字節(jié)是F0H,第二個字節(jié)是這個鍵的通碼值。擴展按鍵的斷碼通常有三個字節(jié),前兩個字節(jié)是E0H、F0H,最后一個字節(jié)是這個按鍵通碼值,每個按鍵具體的通斷碼值可查閱相關(guān)的碼表,這里不再贅述。

        3.PS/2接口的VHDL硬件實現(xiàn)

        設(shè)計的PS/2接口模塊的主要功能是將輸入的PS/2按鍵值轉(zhuǎn)換成掃描碼,并最終轉(zhuǎn)換成ASCII碼輸出,同時要求能夠響應(yīng)PS/2鍵盤上的所有按鍵,包括基本按鍵和擴展按鍵,頂層實體如圖3所示。模塊內(nèi)部用VHDL語言編寫,用系統(tǒng)時鐘掃描PS/2設(shè)備時鐘線的變化,接收數(shù)據(jù)線上的數(shù)據(jù),然后按照PS/2的通信協(xié)議進行解析,并暫存解析后的8位數(shù)據(jù)。另一方面需要對接收到的數(shù)據(jù)的判斷,判斷它是通碼還是斷碼,最后將斷碼進行格式轉(zhuǎn)換,對于字母和數(shù)字,程序?qū)啻a通過譯碼程序轉(zhuǎn)換成ASCII碼,以備后續(xù)使用。在進行PS/2接口模塊設(shè)計時需要注意以下兩點:

        (1)PS/2的時鐘線需要多次鎖存

        設(shè)計中發(fā)現(xiàn),需要對PS/2的時鐘線進行多次鎖存,否則可能出現(xiàn)鍵值識別錯誤。在調(diào)試過程中將時鐘進行兩級鎖存,發(fā)現(xiàn)按鍵識別時誤碼比較嚴重,時鐘線在每次按鍵時都會隨機地產(chǎn)生多余的干擾脈沖,使程序檢測到的時鐘數(shù)多出幾個,造成無法連續(xù)識別。當將時鐘進行十級鎖存后,誤碼率顯著降低,問題得到解決。

        (2)兼容基本按鍵和擴展按鍵

        PS/2鍵盤上的基本按鍵和擴展按鍵發(fā)送的鍵碼格式不同,但是對鍵盤掃描的結(jié)果需要輸出統(tǒng)一的格式,這就需要對數(shù)量較少的擴展按鍵做特殊處理。設(shè)計時發(fā)現(xiàn),擴展按鍵斷碼的最后一個字節(jié)和基本按鍵的并沒有沖突,簡單的做法是忽略它的第二個字節(jié)E0H,將鍵碼格式看成和基本按鍵的相同,當檢測到通碼F0H,則使能標志位,將其后的鍵碼取出進行解析即可[3]。

        圖3PS/2模塊

        模塊中KBCLK是時鐘信號,KBDATA是按鍵的輸入值,PDATA是輸出掃描碼,功能仿真結(jié)果如圖4所示。由圖4可以看出,當RESET為低電平時,執(zhí)行清零操作;根據(jù)PS/2協(xié)議的數(shù)據(jù)幀格式,第1位起始位,并總是邏輯‘0’,接下來的8位是數(shù)據(jù)位,低位在前,接下來1位是停止位,總是邏輯‘1’,圖中的鍵盤輸入KBDATA值是0001100001,PS/2設(shè)備返回值PDATA是00001100,說明按鍵識別正確。

        圖4 時序仿真波形圖

        4.結(jié)束語

        采用現(xiàn)場可編程門陣列FPGA設(shè)計了一種PS/2設(shè)備接口電路,該電路主要由分頻模塊、通信協(xié)議控制模塊、譯碼模塊等組成。PS/2設(shè)備的數(shù)據(jù)輸入通過外圍接口單元進入FPGA內(nèi)部,經(jīng)過控制與解析生成ASCII碼輸出,從而方便后續(xù)按鍵處理程序使用。程序采用VHDL語言編寫,具有較強的功能可移植性。FPGA芯片選用Altera公司的成熟產(chǎn)品EP2C8Q208,充分利用了其高速、大容量、組合靈活等優(yōu)點,并使用QuartusⅡ開發(fā)環(huán)境所提供的庫資源,最大限度地發(fā)揮FPGA的優(yōu)勢,大大簡化了系統(tǒng)設(shè)計,縮短了設(shè)計周期。軟件仿真及硬件調(diào)試表明,設(shè)計中的各個模塊能夠正確地進行數(shù)據(jù)傳送,工作性能穩(wěn)定,達到了預(yù)期目標。

        [1]魏軍輝,王福源,周子昂等.基于FPGA的PS/2鍵盤接口的設(shè)計[J].微計算機信息,2008,24(26):138-140.

        [2]李攀峰.基于SOPC技術(shù)的PS/2鍵盤接口電路設(shè)計[J].自動化與儀器儀表,2012,6:139-141.[3]劉昌華.數(shù)字邏輯EDA設(shè)計與實踐[M].北京:國防工業(yè)出版社,2005.

        Design of PS/2 Interface Circuit Based on EDATechnology

        Wang Yong1Song Xiao1Sun Mengfang2
        (1.Henan University of Science and Technology,Luoyang 471023,Henan;
        2.Luoyang Research Institute of Electro-Optical Equipment ofAVIC,Luoyang 471009,Henan)

        A PS/2 interface circuit is designed based on FPGA chip and VHDL language.Hardware connection,communication protocol,design process and simulation result are introduced.Using the top-down design ideas,giving full play to the advantage of EDA technology,the design greatly shortens the design cycle.Software simulation and hardware debugging demonstrate that data can be transmitted accurately between the modules in the design and the system runs normally.

        王勇,男,河南淮濱人,碩士,講師,研究方向:應(yīng)用電子電路開發(fā)與設(shè)計。

        河南省教育廳科學(xué)技術(shù)研究重點項目,項目編號:14A510003;河南省教育廳自然科學(xué)研究項目,項目編號:13A510263。

        【 Keywords】 PS/2 interface;FPGA;VHDL;communication protocol

        猜你喜歡
        設(shè)備設(shè)計
        諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
        何為設(shè)計的守護之道?
        《豐收的喜悅展示設(shè)計》
        流行色(2020年1期)2020-04-28 11:16:38
        基于VB6.0+Access2010開發(fā)的設(shè)備管理信息系統(tǒng)
        瞞天過?!律O(shè)計萌到家
        基于MPU6050簡單控制設(shè)備
        電子制作(2018年11期)2018-08-04 03:26:08
        設(shè)計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        500kV輸變電設(shè)備運行維護探討
        如何在設(shè)備采購中節(jié)省成本
        97中文字幕精品一区二区三区| 中字无码av电影在线观看网站| 国产成人精品免费视频大全| 中文无字幕一本码专区| 中文字幕亚洲综合久久天堂av| a级毛片无码久久精品免费| 国产激情对白一区二区三区四| 激情综合五月天开心久久| av天堂免费在线播放| 亚洲精品久久7777777| 女同久久精品国产99国产精品| 亚洲AV无码日韩综合欧亚| 日日噜噜噜夜夜狠狠久久蜜桃| 免费a级毛片在线播放不收费| 欧美freesex黑人又粗又大| 一区二区久久不射av| 扒开女性毛茸茸的视频| 中文字幕有码无码人妻av蜜桃 | 99精品国产在热久久无码| 又爽又黄禁片视频1000免费| 精品丝袜国产在线播放| 日韩午夜免费视频精品一区| 99久久精品午夜一区二区| 亚洲网站地址一地址二| 在线免费观看视频播放| 日韩中文字幕在线观看一区| 插b内射18免费视频| 91亚洲国产成人aⅴ毛片大全 | 国产精品久久久久久久久久红粉| 另类内射国产在线| 日韩美女高潮流白浆视频在线观看| 日韩av中文字幕波多野九色| 内射口爆少妇麻豆| 四虎成人精品无码永久在线| 中文字幕日韩熟女av| 麻豆最新国产av原创| 精品无码人妻一区二区三区不卡| 国产精品丝袜在线不卡| 亚洲综合一区二区三区久久| 精品久久久bbbb人妻| 亚洲一区中文字幕在线电影网|