|
這是我從網路上找到的鬧鐘程式
2 e `1 ?: {. ~2 f但Compiler一直不會過
7 a! R8 I8 f) V, T) r( T2 p& @會出現Process clocking is too complex的錯誤0 H5 B! c9 F3 ^8 p/ r; E) b
請問是為什麼呢?? 謝謝
9 c) {( j0 ]7 g( F; ~/ z5 z$ o3 u) k7 x) ~8 P3 c8 B/ m
LIBRARY ieee;
8 Z. W* h! T& b: P, y# \" FUSE ieee.std_logic_1164.all;- w0 V8 l4 s) {
* L; h" x' W( u, c% }
$ Q' o N0 W! ?% rentity scalarmtime is
: q. @. @( p$ gport(set_alarm,set_sc,set_min,set_hour : in std_logic; 5 R7 l; Q) E- o0 e
sc_data : out integer range 0 to 59;
* b# M9 K" O; R& G/ x% G ); ( K( ^' ]0 m' w% o4 a% m D/ B
end scalarmtime; , x& ^7 u5 t2 W3 V2 z" Y! z
' z9 g8 R. r% D3 T, k
- x' f, r* }* }( z4 w
architecture one of scalarmtime is
9 Z1 V* v1 }' Cbegin
a5 u8 C- d( G process(set_sc) 5 o8 j! _; b5 M3 {
variable set_sc_data :integer range 0 to 59; " k' f& L+ {! x$ p
begin
% X6 q) w" i" }* d3 [$ X5 X if(set_alarm = '1') then . X: \6 N$ ~! l& n4 H
if(set_sc'event and set_sc='1') then
& F/ d) N+ Y( d0 p2 J; O) k) o4 w% o) @ if(set_sc_data = 59)then 6 [4 Y7 a. Q( f' m
set_sc_data:= 0; ( l! P) _! U4 r& f' P8 D% M' }
else
' r B7 b( a! X/ x* P- f1 E. p set_sc_data := set_sc_data + 1;
6 ?& t/ [$ s* a end if; 0 w0 k# ?8 x7 j# t1 W- f
end if; " L8 u& q5 ]9 C h
end if; - L& D; \0 \ C. e; s; |2 Z
sc_data <= set_sc_data;
- D" q4 K; Z1 |* G' ^% g+ k end process; / i) Q) X2 C2 f6 B' T$ q
end one; |
|