• 카테고리

    질문 & 답변
  • 세부 분야

    반도체

  • 해결 여부

    해결됨

7장 질문

22.03.20 20:27 작성 조회수 118

2

1) 7장에서 v1_0.v를 해설해 주실 때
 
register가 4개이므로 주소값으로 4bit가 충분하다고 하셨습니다
parameter integer C_S00_AXI_ADDR_WIDTH = 4
 
register가 한 개당 32bit이기 때문에 register들의 시작주소가 0x00 0x04 0x08 0x0c로 시작되는 것은 이해하였습니다
0x0c를 bit로 풀면 8bit 아닌가요? 따라서 8bit가 필요할 것 같은데 왜 4bit 인지 궁금합니다.


 
2) 지금 보여주신 것은 자일링스가 제공하는 AXI 코드라고 하셨습니다
그렇다면 AXI를 다룰 수 있는? 표현할 수 있는 방식은 꼭 자일링스가 보여준 코드가 아니여도 되는 것인가요?
만약 AXI에 대해 잘 알고 있다면 제가 임의로 AXI를 표현하는 코드를 짜도
AXI가 작동을 하는 것인가요?

답변 1

답변을 작성해보세요.

1

안녕하세요 :)

1) 0x0c를 bit로 풀면 8bit 아닌가요? 따라서 8bit가 필요할 것 같은데 왜 4bit 인지 궁금합니다.

0x0c 에서 c 는 0b1100 으로 4 bit 가 맞습니다. (8bit..? 라고 하신게 설마. 0x0c 에서 0b00001100 이라서는 아니죠..?;)

참고로 "x" 는 "hex" 입니다.

 

 
2) 지금 보여주신 것은 자일링스가 제공하는 AXI 코드라고 하셨습니다
그렇다면 AXI를 다룰 수 있는? 표현할 수 있는 방식은 꼭 자일링스가 보여준 코드가 아니여도 되는 것인가요?
만약 AXI에 대해 잘 알고 있다면 제가 임의로 AXI를 표현하는 코드를 짜도

 

AXI가 작동을 하는 것인가요?
 
그럼요. AXI 는 Protocol 로 spec 맞 맞춰서 Custom 설계 가능합니다.
있는것을 쓰자는 취지 였어요. 재설계 하셔도 됩니다. :)
 

답변 감사합니다

1번은 맛비님 예상이 맞습니다

순간 저도 모르게 0c라고 되어 있으니까 0000 1100이니 8bit가 필요하지!

이 생각을 했었습니다 ㅠㅠ