可編程ASIC器件主從式下載開發(fā)系統(tǒng)的設計
2.3 輸入部分
采用8鍵KEY 0~ KEY 7,鍵盤信號經89C51單片機處理后通過三態(tài)緩沖門送至用戶芯片,根據不同工作要求,鍵盤設計有四種輸入模式:琴鍵模式、乒乓模式、脈沖模式和二進制計數模式。除此之外第八鍵還可為特殊功能做單步時鐘輸入模式。
2.4 時鐘資源及分頻
使用IspLSI1016同時配置時鐘產生單元,系統(tǒng)由晶振產生32768 Hz時鐘,經1016內部分頻可以輸出十種頻率,這十種頻率與另外單獨產生的12 MHz信號組合使用(分為四組),可基本滿足設計需要。對1016的ABEL-HDL語言描述(包括配置信號源部分的計數、分頻和顯示部分的譯碼器、數據選擇器)如下:
MODULEDIVCLK
TITLE ‘THIS IS THE HEX BITS COUNTER OF BIN BCD CODE TO 7 SEGMENT CODE CODER’
CK PIN 11; “Y0時鐘輸入”
EN PIN 15; “段碼輸入使能”
Q0,Q2,Q4,Q8,Q9,Q10,Q11,Q12,Q13,Q14,Q15 PIN 43,42,41,40,39,38,37,32,27,26,10
ISTYPE ‘COM’; “分頻器輸出”
NQ0,NQ2,NQ4,NQ8,NQ9,NQ10,NQ11,NQ12,NQ13, NQ14,NQ15 NODE ISTYPE ‘REG_D’;
C0,C1,C2,C3,C4,C5,C6 PIN 8,7,6,5,4,3,44 ISTYPE ‘COM’; “最終結果輸出”
A,B,C,D PIN 19,18,17,16; “十六進制碼輸入”
IN0,IN1,IN3,IN4,IN5,IN6 PIN 20,21,22,31,30,29,28;
“段碼輸入”
CLKIN NODE ISTYPE’COM’;
Q1,Q3,Q5,Q6,Q7 NODE ISTYPE’COM’;
NQ1,NQ3,NQ5,NQ6,NQ7 NODE ISTYPE ‘REG_D’;
QA,QB,QC,QD,QE,QF,QG NODE ISTYPE ‘COM’;
BOUNT=〔Q15..Q0〕; “分頻器輸出”
COUNT=〔NQ15..NQ0〕;
INPUT1=〔QA,QB,QC,QD,QE,QF,QG〕;
“譯碼結果輸出”
INPUT0=〔IN0..IN6〕; “段碼輸入”
OUTPUT0=〔C0..C6〕; “最終結果輸出”
EQUATIONS
CLKIN=!CK; “該段為計數分頻器”
COUNT.CLK=CLKIN;
COUNT.D=COUNT.Q+1;
BOUNT=COUNT.Q;
TRUTH_TABLE﹙〔D,C,B,A〕->〔QA,QB,QC,QD, QE,QF,QG〕﹚
〔0,0,0,0〕->〔1,1,1,1,1,1,0〕; “該段為譯碼器”
〔0,0,0,1〕->〔0,1,1,0,0,0,0〕;
〔0,0,1,0〕->〔1,1,0,1,1,0,1〕;
〔0,0,1,1〕->〔1,1,1,1,0,0,1〕;
〔0,1,0,0〕->〔0,1,1,0,0,1,1〕;
〔0,1,0,1〕->〔1,0,1,10,1,1〕;
〔0,1,1,0〕->〔1,0,1,1,1,1,1〕;
〔0,11,1〕->〔1,1,1,0,0,0,0〕;
〔1,0,0,0〕->〔1,1,1,1,1,1,1〕;
〔1,0,0,1〕->〔1,1,1,1,0,1,1〕;
〔1,0,1,0〕->〔1,1,1,01,1,1〕;
〔1,0,1,1〕->〔0,0,1,1,1,1,1〕;
〔1,1,0,0〕->〔1,0,0,1,1,1,0〕;
〔1,1,0,1〕->〔0,1,1,1,1,0,1〕;
〔1,1,1,0〕->〔1,0,0,1,1,1,1〕;
〔1,1,1,1〕->〔1,0,0,0,1,1,1〕;
EQUATIONS
WHEN EN==1 THEN OUTPUT0=INPUT1;
“該段為數據選擇器”
WHEN EN==0 THEN OUTPUT0= INPUT0;
END
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論