5 試題一
一、 試題編號:11700-990201 二、 試題名稱:四位數多工顯示器 三、 檢定時間:六小時
四、 試題說明
本試題依檢定電子電路圖分為兩部份,第一部份稱為母電路板,內容包括(1)以方 格紙繪製佈線圖,(2)依所繪製之佈線圖,以萬用電路板進行裝配及焊接;第二部 份稱為子電路板,內容包括(1)以蝕刻好的電路板進行裝配及焊接工作,(2)以電子 設計自動化(EDA)軟體完成可程式晶片之電路設計。並依組裝圖將母電路板與子電 路板組合及配合測試機台完成試題動作要求。其工作說明如下:
1. 方格紙繪製之佈線圖依繪圖規則,分別繪製成標明元件接腳及元件代號之「元 件佈置圖」(元件面)及裸銅線之「佈線圖」(銅箔面)。「元件佈置圖」與
「佈線圖」背對背重疊後,「元件面」各元件端點必須與「銅箔面」相對焊點 對齊。
2. 裝配及焊接工作依「裝配規則」與「焊接規則」完成組裝。
3. 母電路板實體之「元件佈置」與「裸銅線佈線」,必須與繪圖之「元件佈置」
與「裸銅線佈線」相同。
4. 子電路板之可程式晶片,使用 EDA 工具軟體依試題動作要求,進行電路設計、
晶片規劃、接腳指定、模擬測試及下載,完成功能測試。
5. 本試題須完成母電路板與子電路板之組裝及母電路板之繪圖工作,否則不予評 分。
五、 試題動作要求
(一) 電源開關(SW1)ON,則 AC 110V 電源指示燈(NL1)及 DC 電源指示燈(NL2)應 亮。
(二) 凡未具有下列之全部功能要求者不予評分:
調整 VR1 可變電阻(測試機台面板之計數速率控制調整鈕),改變 CK1 振盪頻
第1頁
率輸出可使顯示計數速度增快或變慢,亦即:
1. 調整 VR1 可變電阻器,讓個位數可清楚看出從 0~9 順序計數,且七段顯示 器能正常顯示。
2. 調整 VR1 可變電阻器,讓十位數可清楚看出從 0~9 順序計數,且七段顯示 器能正常顯示。
3. 調整 VR1 可變電阻器,讓百位數可清楚看出從 0~9 順序計數,且七段顯示 器能正常顯示。
4. 調整 VR1 可變電阻器,讓千位數可清楚看出從 0~9 順序計數,且七段顯示 器能正常顯示。
(三) 調整 VR2 可變電阻器(測試機台面板之位數掃瞄速率控制調整鈕),改變 CK2 振盪頻率輸出可使多工掃瞄速度改變。
1. 順時針旋轉掃瞄速度變快,逆時針旋轉掃瞄速度變慢。
2. 當 VR2 調整至適當值時,使顯示數字穩定不閃爍。
(四) 按下清除鍵(S1)時,則 4 位數字均重置為「0000」,放開(S1)鍵後,計數重新 由「0000」開始上數。
8
(三) 已裝置部分之電子電路圖(四位數多工顯示器)
第3頁
(四)檢定電子電路圖(四位數多工顯示器)
1. 母電路板電路圖
母電路板
子電路板之 CPLD 功能方塊 Vcc +V
P1
P3
P2
P4
P22 P14 P16 P6 P8 P10 P12 3.3V 穩壓器
U10
千位計數器
百位計數器
十位計數器
個位計數器
多工器
二位元計數器 C11
C10
R10 C10
CLR C10
CK1 C10
CK2 C10
D C1 0 C C1 0 B C1 0 A C1 0 C10
+ C10
S1
S0
項目 母板腳位 子板信號 子板腳位
1 P1 (VCC) -
2 P3 CLR 31
3 P2 CK1 33
4 P4 CK2 29
5 P12 D data[3] 27
6 P10 C data[2] 26
7 P8 B data[1] 25
8 P6 A data[0] 24
9 P16 S1 21
10 P14 S0 20
11 P22 (GND) -
12 - clk_sys 43
第5頁
Block-Diagram 設計流程
1. 四組 Mod-10 的 LPM 元件
(1)元件名稱:lpm_counter → (2)格式:VHDL → (3)輸出位元數:4 →
(4)計數模式:上數 → (5)工作模式:除 10 → (6)額外接腳:carry-in、carry-out → (7)非同步式清除接腳
2. 輸入信號處理─微分
3. Mod-4 的 LPM 元件
(1)元件名稱:lpm_counter → (2)格式:VHDL → (3)輸出位元數:2 → (4)計數模式:上數 → (5)工作模式:plain binary → (6)額外接腳:carry-in →
4. 4 對 1 多功器的 LPM 元件
(1)元件名稱:lpm_mux → (2)格式:VHDL → (3)輸入埠數:4 → (4)位元數:4
Date: October 26, 2017 ex1.bdf* Project: ex1
Page 1 of 1 Revision: ex1
data[3..0]
OUTPUT
scan[1..0]
OUTPUT
CLRN D
PRN Q DFF
inst8
CLRN D
PRN Q DFF
inst9 NOT inst10
ck2 INPUTVCC
up counter modulus 10 clock cin
aclr
q[3..0]
cout lpm_counter0
inst1
up counter modulus 10 clock cin
aclr
q[3..0]
cout lpm_counter0
inst
AND2
inst11 CLRN
D PRN
Q DFF
inst5 NOT inst6
AND2
inst7
up counter clock
cin q[1..0]
lpm_counter1
inst12 data3x[3..0]
data2x[3..0]
data1x[3..0]
data0x[3..0]
sel[1..0]
result[3..0]
lpm_mux0
inst13
up counter modulus 10 clock cin
aclr
q[3..0]
cout lpm_counter0
inst2
up counter modulus 10 clock cin
aclr
q[3..0]
cout lpm_counter0
inst3
clr INPUTVCC
ck1 INPUTVCC
CLRN D
PRN Q DFF
inst4
clk_sys INPUTVCC
PIN_27 PIN_26 PIN_25 PIN_24
PIN_21 PIN_20
PIN_29
PIN_31 PIN_33
PIN_43
第7頁