삽질매니아

위치로그, 태그, 방명록

'Excess-3'에 해당되는 글 1건

  1. 2007/05/02 Excess-3 변환기(컨버터) Verilog(베릴로그) 소스

Excess-3 변환기(컨버터) Verilog(베릴로그) 소스

전공공부 2007/05/02 02:48
Excess-3 Code(Gray Code)란 0~9까지의 BCD코드를 3더한 순서로 나열한것으로

0011,0100,0110....,1100 으로 나오는 것이다.

다른말로는 BCD to Excess 3 Code Converter라고도 하는데 이것을

Verilog HDL을 이용해 3가지 방법 즉,
1. Gate Level Description(게이트 수준기술)
2. Dataflow Description(데이터플로우 수준기술)
3. Behavioral Description(동작 수준기술)
로 나타내면 다음과 같이 코딩할수 있다.

1. Gate Level Description

module BinaryToGray(A,B,C,D,w,x,y,z);
    input A,B,C,D;
    output w,x,y,z;
    wire w1,w2,w3,w4,w5,w6,w7;
    not g1(z,D);
    and g2(w1,D,C);
    or g3(w2,D,C);
    not g4(w3,B);
    not g5(w7,w2);
    or g6(y,w1,w7);
    and g7(w4,w7,B);
    and g8(w5,w2,w3);
    and g9(w6,w2,B);
    or g10(x,w4,w5);
    or g11(w,w6,A);
endmodule


2. Dataflow Description

module BinaryToGray(A,B,C,D,w,x,y,z);
    input A,B,C,D;
  output w,x,y,z;
     assign z = ~D,
            y = (D&C)|(~(C|D)),
            x = ((~(C|D))&B) | ((C|D)&(~B)),
            w = ((C|D)&B)|A;
endmodule


3. Behavioral Description

module BinaryToGray(A,B,C,D,w,x,y,z);
  input A,B,C,D;
  output w,x,y,z;
  reg [3:0] E;
  wire [3:0] state;
  parameter S0=4'b0000, S1=4'b0001, S2=4'b0010, S3=4'b0011, S4=4'b0100,
             S5=4'b0101, S6=4'b0110, S7=4'b0111, S8=8'b1000, S9=4'b1001;
  assign w=E[3], x=E[2], y=E[1], z=E[0];
  assign state[3] = A, state[2] = B, state[1] = C, state[0] = D;
  always @ (state)
  case(state)
     S0 : E = 4'b0011;
     S1 : E = 4'b0100;
     S2 : E = 4'b0101;
     S3 : E = 4'b0110;
     S4 : E = 4'b0111;
     S5 : E = 4'b1000;
     S6 : E = 4'b1001;
     S7 : E = 4'b1010;
     S8 : E = 4'b1011;
     S9 : E = 4'b1100;
     default : E = 4'b0000;
  endcase
endmodule

이렇게 가능하다.

이것을 보면 동작수준 모델이 항상 최선의 선택이 아님을 알수있다.
때로는 다른방법이 더 짧게 코딩이 될수도 있다.
myeva
2007/05/02 02:48 2007/05/02 02:48
top
TAG BCD, Behavioral, Dataflow, Excess-3, Gatelevel, GrayCode, Verilog, Verilog HDL


Trackback[트랙백] 0 : Comment[댓글] 0

Trackback Address :: http://skstar.net/blog/trackback/152

Write a comment


◀ PREV : [1] : NEXT ▶

 


관리자 : 새글쓰기
내가 하는 삽질은 활용이지! 활용이라는것이 어떤건지 보여주겠어~

카테고리

전체 (210)
전공공부 (9)
윈도우활용 (33)
동영상 (4)
Windows 7 (7)
휴대기기 (25)
휴대폰 (22)
인터넷 (66)
구글(Google) (3)
도메인(Domain) (27)
웹호스팅(Hosting) (6)
태터툴즈(Tattertools) (11)
신기한서비스 (2)
워드프레스(WordPress) (0)
지름신및 이벤트 (9)
Photos (0)
Macro (0)
일기장 (22)
음악과 함께 (2)
In Houston (3)
닌텐도 DS(NDS) (29)
라디오 (1)
돈이야기 (11)

태그목록

  • 우왕ㅋ굳ㅋ 고화질 동영상 무료국제전화 쇼핑몰 대량보유 길벗 오버클로킹 클럽박스 애드센스 아이폰 구글동영상 닌텐도DS 증권 상승 Mysql Final Fantasy III 펀드 파이널 판타지 3 하나로통신 폰스토어

최근에 올라온 글

  • 12월 옥션 이머니 500 포인트....
  • 빅파일(bigfile) 유저라면 무.... (1)
  • 이제야 정말 막바지로 접어드....
  • 재미로 계산해본 주가지수 상....
  • [사랑나눔] 다운로드 쿠폰(파.... (5)

최근에 달린 댓글

  • 좋은정보와 댓글에 감사합니.... 코랄팜 03/07
  • 정말 감사합니다.. 7900gs를.... 혼돈 03/04
  • 다 사용. 11 03/04
  • 저도 같은증상인데 해결봐야.... GST 01/23
  • 역시나 사용된 것이네요...리.... 자유로운영혼 01/20

최근에 받은 트랙백

  • 도메인에 투자해서 대박(?)....
    k2man의 IT이야기 03/09
  • 노트북에 myLG070 인터넷전화....
    ~ wanna be a better man 01/06
  • IDG 뉴스레터 | 애플 아이폰....
    Bluesky 2009
  • IDG 뉴스레터 | 애플 아이폰....
    Bluesky 2009
  • 닷네임코리아 - 문제많은&nbs....
    춤추는리본 2009

글 보관함

  • 2009/12 (2)
  • 2009/11 (2)
  • 2009/10 (1)
  • 2009/07 (3)
  • 2009/06 (4)

달력

«   2010/03   »
일 월 화 수 목 금 토
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

링크

  • 11번가.
  • Auction.
  • G마켓.
  • KRBE.
  • 모닝365.
  • 변경가능하다니까.
  • 비누넷.
  • 우울한 피.
  • 테터툴즈.

282

173

-20 days

today : 170

Total : 269368

Tattertools
rss


위치로그 : 태그 : 방명록 : 관리자
myeva’s Blog is powered by Tattertools.com / Designed by plyfly.net