본문 바로가기

RISC-V

[RISCV] Toolchain Install RISC-V의 툴체인은 GCC를 비롯한 일련의 S/W 를 말한다. RISC-V 를 사용하기 위해서는 이 툴체인이 설치되어야 하며, 아래가 공식 툴체인이다. https://github.com/riscv/riscv-gnu-toolchain 그리고 물론 LLVM도 최신 버젼에서 riscv를 지원하때문에 , gcc대신에 LLVM으로 사용도 가능하다. 하지만, 현재 인터넷에 널려있는 자료들이 대부분 gnu gcc기준으로 작성되어 있기떄문에, gnu gcc로 어느정도 툴을 익히고 llvm등을 사용하는게 좋을듯 하다. gcc 전체를 만드는 것은 컴파일 하는데 꽤 시간이 오래 걸리기때문에, OS별로 pre-compile 해놓은 버젼도 있다. 잘 안되면 이 버젼을 그냥 가져다 쓰는 것도 나쁘지 않다. 그리고 gcc도 m.. 더보기
[RISCV] Tang nano로 Hello RISC-V 메뉴얼에 있는대로 pico soc를 합성하고 올려보았다. 아래는 스크린샷. Project picotiny를 읽어서 합성하면 되는데 , 안되는 경우 Project-> configuration에서 , 아래 MSPI를 체크하고 합성을 진행한다. 정상 구동되는것 확인한다. tangnano는 이 자체로 uart동작하는 칩도 같이 붙어 있으므로 별도 작업없이 터미널 테스트가 가능하다. Windows에서 power shell을 열어서, 아래와 같은 명령어로 uart가 되는지 확인, 아래 getportname으로 포트번호를 확인한다음에 , putty와 같은 프로그램으로 COM[포트번호] 로 연결 해서 잘 동작하는지 확인한다. [System.IO.Ports.SerialPort]::getportnames() $port= .. 더보기
[RISCV] Chisel chisel은 한글로 하면 끌이라는 도구로 나무나 돌 얼음등을 긁는 도구이다. RISC-V에서의 chisel은 scala 기반의 RTL Generator를 이야기하는 것이고 버클리에서 처음 만든 RISC-V가 이 chisel을 기반으로 생성되었다. 여기에 rocket chip generator라고, 단순히 하나의 model을 만드는것이 아니라 좀더 scalable하게 만들수 있는 구조이다. 이 기반이 되는 scala라는 language인데, 이게 저변은 그렇게 넓지는 않지만, 함수형언어로 완성도 측면에서는 완결성을 가지는 구조이기때문에, 결과물도 formal하게 나오는 것으로 보인다. 그래서 RISC-V에서 여러버젼이 있지만 이 rocket chip을 이용하려면 이 scala를 약간은 핸들링할수 있어야한.. 더보기
[RISCV] Tang nano 9K 알리에서 우연찮게 찾은 키트다. FPGA, 사실 이전에는 들어 보지도 못한 Gowin이라는 대륙 벤더에서 나온 FPGA를 사용한 제품인데, 기본적으로 가성비가 좋음. 이 글쓰면서 알아보니, 래티스반도체 에서 나온분이 2014년에 만든 FPGA벤더이고, 출하량도 생각보다 굉장히 많음. FPGA업계 점유율 1위는 자일링스이고, 2위가 알테라(인텔) ,, 그리고 래티스 , ICE라고 외국애들 보면 취미로 하는 얘들이 래티스의 ICE를 많이 사용하고,, 고윈은 순위권밖이긴하지만, 10위안에 드는 회사로 인듯, 이 고윈 반도체 칩을 사용해서 SiPEED라는 회사가 만들었음, 이 당나노는 업체에서 만든것 외에는 거의 자료가 없음. 그리고 검색하다보니, 이 tang nano의 당은 당나라의 당을 따서 만든듯 하다.... 더보기