找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 1004|回复: 5
打印 上一主题 下一主题

请教四细分辨向电路的VHDL语言描述

[复制链接]

1

主题

4

帖子

8

积分

初级新手(9)

Rank: 1

积分
8
跳转到指定楼层
1#
发表于 2010-4-22 15:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
library ieee;* K- u8 U. y& N$ |1 T
use ieee.std_logic_1164.all;
: L0 P& E7 z3 K' r: U8 kuse ieee.std_logic_arith.all;7 q) t8 }9 f( V; F2 G/ s
use ieee.std_logic_unsigned.all;+ h( {) `/ n) m
entity time4 is* U: X9 |9 T' P, i$ ~5 j3 T
   port(ab    : in std_logic_vector(1 downto 0);6 n( c2 H- Q7 t. q3 x
        clk   : in std_logic;
; U& Q5 B0 T* b* N* m2 O4 ]        pp,np : out std_logic);
" Q$ ^5 ]( N; U0 ?- S3 |8 h% X( ?end time4;
9 G; k8 e$ r2 u6 {4 N% c) g; Marchitecture one of time4 is$ S+ V2 F& p/ Z. R# p1 l
signal state : std_logic_vector(1 downto 0);) ~# D/ k# {( c$ Y6 q+ J
signal ab_1  : std_logic_vector(1 downto 0);, ~  E/ r; [6 f8 E6 c1 w' n2 Z8 P. X
signal spp,snp : std_logic;& i) l' `. c$ x2 s! Z
begin
* \" R& V+ F' I  process(clk,ab)' |2 H1 Q5 n0 j, S! g9 ~& C0 [; b+ Z
  begin6 x& Z- O  t9 D6 C5 H2 b+ }# B
  if(clk'event and clk='0') then ab_1<=ab;
* c/ a8 R" W% V3 N% n  end if;
* }+ d. A5 ?1 O+ n( d$ K  t9 P  end process;$ i( L: `& X6 N; Z, N0 H1 {* y
  process(clk,state,snp,spp)
) x  M  ~& _7 i6 i: N. s  begin
+ c: }* T& O  f3 c% e5 t! ]  if(clk'event and clk='1') then& f6 ]* \/ W" t  ~" c# M; T& w
     if(ab_1="00") then( L9 a: N( p5 E. ^+ k
       case state is
# m( g# i2 M  R       when "10"=>state<="00";spp<=’1’;8 }% c. n4 Y: _% f+ {
       when "01"=>state<="00";snp<=’1’;
2 N. x  g- U$ F       when others=>state<="00";spp<='0’;snp<=’0’;
  i  T3 Q  l! N5 s& S# v( G       end case;) c7 R* s4 q: x$ W/ w9 ~% R$ x4 ~0 O
     elsif(ab_1="01") then
  o& ~' q( E2 F  w2 W7 [+ m       case state is
9 w4 f2 _) x; v0 K' R# I/ W4 r       when "00"=>state<="01";spp<='1';1 k0 f( k% q. o4 _3 c6 W1 \4 h8 K
       when "11"=>state<="01";snp<='1';. t6 E/ d; `# |: K. Z6 v7 \: Y
       when others=>state<="01";snp<='0';spp<='0';
4 z& U( q$ G# \2 t: z/ }       end case;$ G" y0 Q/ j' L. \
     elsif(ab_1="11") then7 G% k  C+ r7 {
        case state is/ Y4 U3 P5 \4 z2 Q1 j% @
        when "01"=>state<="11";spp='1';
% p; o1 j+ h5 h- n0 l0 V6 n        when "10"=>state<="11";snp='1';
- O  d' h# [9 g' c5 f        when others =>state<="11";--spp='0';snp='0';) O: m+ I+ [! g: b% o2 o
        end case;% W# w+ o% a1 h: M1 G
      else$ y) g* \" A& H8 \
        case state is
  |* J' G& [" D: X( j2 [" e        when "11"=>state<="10";spp='1';
# d5 I  p/ @& ?        when "00"=>state<="10";snp='1';& T! R- f' A3 f  l% ~. G5 B
        when others =>state<="10";snp='0';spp='0';1 q, Z; T/ l+ Q4 F  J
        end case;: X7 a0 N+ P" A& Q2 s3 n' h7 o
      end if;
& ^6 w9 o( u9 w  end if;
4 f  `9 u% L5 }: {" y  gend process;- Q5 ~( E1 m* y# U/ [
   pp<=spp;: k% }! H/ N! e9 Q" V- ]' B1 P7 u4 n
   np<=snp;
4 _8 v' n% j" X) K3 hend one;        
" ]# E# E, O" A; y2 Z* u/ D" P程序在QII中老是错误,请大虾们帮帮小弟!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

1

主题

4

帖子

8

积分

初级新手(9)

Rank: 1

积分
8
2#
 楼主| 发表于 2010-4-22 15:39 | 只看该作者
case语句表示state的变化后不能给spp或snp赋值吗?

1

主题

4

帖子

8

积分

初级新手(9)

Rank: 1

积分
8
3#
 楼主| 发表于 2010-4-22 15:39 | 只看该作者
没人吗?

2

主题

8

帖子

317

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
317
4#
发表于 2010-5-14 14:56 | 只看该作者
if(clk'event and clk='0') then ab_1<=ab;    单靠下降沿没法赋值

2

主题

8

帖子

317

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
317
5#
发表于 2010-5-14 14:57 | 只看该作者
if(clk'event and clk='0') then ab_1<=ab;    单靠下降沿没法赋值

17

主题

162

帖子

3751

积分

五级会员(50)

Rank: 5

积分
3751
6#
发表于 2010-5-14 15:52 | 只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-28 12:49 , Processed in 0.061446 second(s), 39 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表