2008/12/17에 해당되는 글 2건
2008.12.17 :: Verilog HDL 3. 데이터형(1) 12
2008.12.17 :: 공지사항입니다. 1
2008. 12. 17. 12:00 :: FPGA
이번부터는 실제로 QUARTUS II를 이용해서 로직을 설계하고 시뮬레이션을 해보려고 도서관에서 책을 대여 하였습니다.
"Verilog HDL의 기초와 디지털 논리회로설계"와 "디지털 논리회로와 집적회로설계" 같은 저자분께서 책을 쓰셨네요.
살펴보니 두 책이 비슷한데 QUARTUS를 이용하는 방법과 로직설계의 방법의 설명이 잘 되어 있습니다.
일단 Verilog HDL을 컴파일하고 시뮬레이션 하려면 QUARTUS 라는 프로그램이 필요한데 www.altera.com 에 가서 Quartus II Web Edition을 온라인으로 다운 받아서 사용하시면 됩니다.
다운로드 방법은 다음에 올리도록 하지요.( 얼마전까지 라이센스를 받아서 설치 한걸로 기억하는데 지금은 Quartus® II Web Edition Software v8.1를 다운 받을 수 있고 라이센스가 필요없다고 하네요ㅋ다운받고 있습니다. 받아서 설치해봐야 겠어요. )
암튼 책을 보고 있는데 문법은 살펴 보았고 데이터형을 공부해 보면서 정리 할 필요가 있더군요.
Verilog HDL 데이터형
1) 논리값 집합
Verilog HDL은 하드웨어 기능을 모델로 한 4개의 논리값과 8개의 신호 강도를 지원한다.
net Y가 and GATE G1 출력으로 연결 되어 있다.
net은 키워드가 아니라 wire, wand, wor, tri, triand, trior, trireg 등의 집합을 나타낸다. 대부분 wire로 선언
wire Y;
wire A, B;
wire C=1'b0 // C는 논리값 0으로 선언
- 넷의 데이터형
wire : 논리적인 행동이나 기능 없이 단지 연결하는데 사용한다.(디폴트)
tri :wire 와 같으며 하이임피던스 상태가 더 있다.
supply1 : 넷을 전원에 연결한다.
supply0 : 넷을 그라운드에 연결한다.
tri1 : 넷을 풀업(pull up) 시킨다.
tri() : 넷을 풀다운(pull down) 시킨다.
wor : 여러 디바이스 출력을 선으로 연결(wired)하여 "or"기능을 하는 넷
trior : wired-or와 같으나, 하이임피던스 상태가 더 있다.
wand : 여러 디바이스 출력을 선으로 연결(wired)하여 "and"기능을 하는 넷
triand : wired-and와 같은나 하이임피던스 상태가 더 있다.
trireg : 하이 임피던스 상태가 있는 저장형인 넷(신호강도)
3) 레지스터
레지스터는 데이터를 저장할 수 있다. 하드웨어에서 레지스터와 다르다. 즉 Verilog에서 레지스터는 단지 값을 저장할 수 있는 변수를 의미한다. 하드웨어에서 레지스터는 클럭이 필요하지만 Verilog에서는 그렇지 않다.
레지스터 데이터형은 키워드 reg에 의해 정의 된다. 기본 논리값은 x 이다.
reg RESET;
initial // 초기화 선언
begin
RESET = 1'b1; // RESET를 1로 초기화
#100 RESET = 1'b0; // 100 단위 시간이 지난 뒤 RESET값을 바꾼다.
end
책을 보면서 정리를 하는데 내용이 많네요.스크롤의 압박?
논리값을 어떻게 나타내는지, net의 의미와 사용법, wire로 사용 한다는 것을 알았고 레지스터는 데이터를 저장하는 변수 역할을 하고 reg로 사용 한다는 것을 알게 되었습니다.
다음에는 못다한 내용을 이어 가도록 하지요~~
"Verilog HDL의 기초와 디지털 논리회로설계"와 "디지털 논리회로와 집적회로설계" 같은 저자분께서 책을 쓰셨네요.
살펴보니 두 책이 비슷한데 QUARTUS를 이용하는 방법과 로직설계의 방법의 설명이 잘 되어 있습니다.
일단 Verilog HDL을 컴파일하고 시뮬레이션 하려면 QUARTUS 라는 프로그램이 필요한데 www.altera.com 에 가서 Quartus II Web Edition을 온라인으로 다운 받아서 사용하시면 됩니다.
다운로드 방법은 다음에 올리도록 하지요.( 얼마전까지 라이센스를 받아서 설치 한걸로 기억하는데 지금은 Quartus® II Web Edition Software v8.1를 다운 받을 수 있고 라이센스가 필요없다고 하네요ㅋ다운받고 있습니다. 받아서 설치해봐야 겠어요. )
암튼 책을 보고 있는데 문법은 살펴 보았고 데이터형을 공부해 보면서 정리 할 필요가 있더군요.
Verilog HDL 데이터형
1) 논리값 집합
Verilog HDL은 하드웨어 기능을 모델로 한 4개의 논리값과 8개의 신호 강도를 지원한다.
논리값 레벨 |
하드웨어 회로에서의 상태 |
0 |
논리적 0, 거짓 상태 |
1 |
논리적 1, 참 상태 |
x |
알 수 없는 논리값 |
z |
하이 임피던스, 플로팅 상태 |
논리적인 값과 더불어 신호 강도를 갖는 신호들의 충돌을 해결하는데 종종 쓰인다.
신호 강도 |
형 |
정도 |
supply |
흐름(driving) |
가장 강도가 높음 |
strong |
흐름(driving) |
↑ |
pull |
흐름(driving) |
↑ |
large |
저장(storage) |
↑ |
weak |
흐름(driving) |
↑ |
medium |
저장(storage) |
↑ |
small |
저장(storage) |
↑ |
highz |
하이임피던스 |
가장 강도가 낮음 |
만약 다른 강도의 두 신호가 동일한 wire에 흐르면 더 강한 강도의 신호가 우세하다. 같은 강도가 만나면 어떠한 신호가 나올지 모른다.(x 이다.) trireg 넷만이 large,medium, small의 강도를 저장할 수 있다.
2) 넷(Nets)
넷은 하드웨어 요소 사이에 연결을 나타낸다. wire와 net은 종종 서로 같은 뜻으로 사용된다. net의 기본값은 z이다. (trireg net은 기본값이 x이다.)
net은 키워드가 아니라 wire, wand, wor, tri, triand, trior, trireg 등의 집합을 나타낸다. 대부분 wire로 선언
wire Y;
wire A, B;
wire C=1'b0 // C는 논리값 0으로 선언
- 넷의 데이터형
wire : 논리적인 행동이나 기능 없이 단지 연결하는데 사용한다.(디폴트)
tri :wire 와 같으며 하이임피던스 상태가 더 있다.
supply1 : 넷을 전원에 연결한다.
supply0 : 넷을 그라운드에 연결한다.
tri1 : 넷을 풀업(pull up) 시킨다.
tri() : 넷을 풀다운(pull down) 시킨다.
wor : 여러 디바이스 출력을 선으로 연결(wired)하여 "or"기능을 하는 넷
trior : wired-or와 같으나, 하이임피던스 상태가 더 있다.
wand : 여러 디바이스 출력을 선으로 연결(wired)하여 "and"기능을 하는 넷
triand : wired-and와 같은나 하이임피던스 상태가 더 있다.
trireg : 하이 임피던스 상태가 있는 저장형인 넷(신호강도)
3) 레지스터
레지스터는 데이터를 저장할 수 있다. 하드웨어에서 레지스터와 다르다. 즉 Verilog에서 레지스터는 단지 값을 저장할 수 있는 변수를 의미한다. 하드웨어에서 레지스터는 클럭이 필요하지만 Verilog에서는 그렇지 않다.
레지스터 데이터형은 키워드 reg에 의해 정의 된다. 기본 논리값은 x 이다.
reg RESET;
initial // 초기화 선언
begin
RESET = 1'b1; // RESET를 1로 초기화
#100 RESET = 1'b0; // 100 단위 시간이 지난 뒤 RESET값을 바꾼다.
end
책을 보면서 정리를 하는데 내용이 많네요.스크롤의 압박?
논리값을 어떻게 나타내는지, net의 의미와 사용법, wire로 사용 한다는 것을 알았고 레지스터는 데이터를 저장하는 변수 역할을 하고 reg로 사용 한다는 것을 알게 되었습니다.
다음에는 못다한 내용을 이어 가도록 하지요~~
안녕하세요.
시그가 막바지에 접어들고 있습니다 ^^*
크리스마스를 기점으로 시그가 종시그 가 되는데요.. 그동안 포스팅을 열심히 해주셨던 분들 감사드립니다 ~
네가지만 알려드릴께요.
1. 이번주,다음주는 블로깅 포스팅에대한 벌금이 없습니다.
그렇다고 모든분들이 포스팅을 안하셔두 된다는 말은 아닙니다.
시그 종강이 다가온 만큼,
활동량이 적으신 회원들은 크리스마스 25일이 되는 그날까지 블로깅을 완료해주셨으면 합니다.
뭔가 어렵게 설명한것 같지만 다음과 같습니다.
우리 시그를 무사히 빠져나가시기 위해서는 6개 이상의 포스팅을 하셔야 합니다.
(총 10주짜리 시그였는데 그중 2주가 빠지고 2번정도는 애교로 봐서~~)
즉. 현재 6개 이상의 포스팅을 하신 분들은
이번주 다음주는 시험기간이고 하니 쉬셔두 되지만
6개 이상의 포스팅이 되지 않으신 분은
열심히 포스팅을 해서 6개를 채워주시기 바랍니다 ^^
이번주 다음주는 시험기간이고 하니 쉬셔두 되지만
6개 이상의 포스팅이 되지 않으신 분은
열심히 포스팅을 해서 6개를 채워주시기 바랍니다 ^^
(25일까지 포스팅을 완료해주셔야 하는 분들 )
박은병, 박상용, 박윤성, 정정아, 정성문, 이호성 입니다.
6개의 포스팅을 완료하지 못하시면 추가 벌금이 나갈지도..ㄷㄷㄷ.. 문의를 주세요^^*
박은병, 박상용, 박윤성, 정정아, 정성문, 이호성 입니다.
6개의 포스팅을 완료하지 못하시면 추가 벌금이 나갈지도..ㄷㄷㄷ.. 문의를 주세요^^*
2.
벌금을 내는 방법.
1) 자신의 벌금이 얼마인지 확인을 한다.
2) 계좌입금 혹은 김지혜에게 직접 벌금을 전달한다.
(계좌입금을 하셨으면 바로 김지혜 010-2947-2346)으로 성함과 문자를 알려주세요.
3) 혹 벌금이 이상하게 매겨져있다 싶으면 바로 막 김지혜에게 따진다.
걷은 벌금은 회식때 요긴하게 사용되도록 하겠습니다.
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
3. 벌금 공지입니다.
이슬희 | 0원 | 박진영 | 10000원 | 서상원 | 20000원 // |
차주민 | 30000원 | 최동혁 | 15000원 | 김대욱 | 5000원 |
이호성 | 25000원 | 박상용 | 35000원 | 전한경 | 15000원 |
조일용 | 0원 | 정성문 | 15000원 | 정정아 | 30000원 |
박은병 | 25000원 | 박윤성 | 25000원 | 유광현 | 15000원 |
김지혜 | 10000원 | ||||
심형남 | 5000원 | 채은석 | 15000원 | 합계 : | 295000원 |
지각한것은 살짝 눈감아주는 센스를 발휘하였기 때문에-0-..
자신이 생각했던것 보다 벌금의 양이 작게 느껴질 수도 있습니다.
그냥 작게 느껴진다 싶으시면 후딱내고 조용히 있으셔두 되고요
만약 생각했던것 보다 많은데?? 싶으시면 저에게 말씀해주세요. 적당히 딜 해봅시다. ^^*
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
4. 회식은 27일이나 28일 이 어떤가 합니다. ㅋ
회식에 관한 공지는 자유게시판을 통하여 따로 하도록 하겠습니다. ^^
감사합니다.
마지막으로
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )
계좌 : 국민은행 399101 04 013631 김지혜
기한은 12월 26일까지 ( 26일까지 안내시는 분은 추가벌금 또 받도록 하겠습니다. ^^* )