'OpenRISC'에 해당되는 글 4

  1. 2011/08/01 FreeRTOS port of OpenRISC (2)
  2. 2011/07/25 요즘 하고 있는 것 (2)
  3. 2010/04/02 Howto: Porting the GNU Debugger, Writing a RSP Server (2)
  4. 2009/08/30 Evaluation of synthesizable CPU cores (7)
 

FreeRTOS port of OpenRISC

뻘글들 | 2011/08/01 06:54 | Posted by DMW
크리에이티브 커먼즈 라이선스
Creative Commons License
어쩌다보니까 정식으로 이 프로젝트의 project maintainer가 되었습니다. 공식 홈페이지에 자리를 얻어서 이제는 구글 프로젝트 호스팅에 꾸몄던 사이트는 사용하지 않게 되었음. 아래 링크를 타고가면 내가 opencores.org 위키에 쓴 간단한 문서를 볼 수 있따능.


OpenRISC FreeRTOS의 HAL에 관한 내용도 일부 쓰여 있으니까 FreeRTOS를 새로운 아키택쳐로 포팅할 때도 도움이 될만한 문서라능. 아마도....


저작자 표시 비영리 동일 조건 변경 허락

'뻘글들' 카테고리의 다른 글

80000 hit  (1) 2011/09/24
FreeRTOS port of OpenRISC  (2) 2011/08/01
요즘 하고 있는 것  (2) 2011/07/25
GDB Reverse debugging  (0) 2011/07/21
How to install Boost Library in Mingw  (0) 2011/05/16
집에서 쓰는 키보드, Filco Zero Tenkeyless  (1) 2010/11/07

댓글을 달아 주세요

  1. sloth 2011/08/02 22:51  댓글주소  수정/삭제  댓글쓰기

    오오 횽 열심히 살고있다능

요즘 하고 있는 것

뻘글들 | 2011/07/25 04:30 | Posted by DMW
크리에이티브 커먼즈 라이선스
Creative Commons License
https://code.google.com/p/freertos-openrisc/

저걸 하고 있음....프로젝트 오너가 나라능. 나는 죽지 않았습니다. 개을러서 포스팅을 못하고 있던것 뿐....

프로젝트 위키에 문서를 몇개 작성하고 OpenRISC 공식 포럼쪽에 홍보도 하고 나면 블로그에 관련 내용을 올려보도록 하겠다능.
저작자 표시 비영리 동일 조건 변경 허락

'뻘글들' 카테고리의 다른 글

80000 hit  (1) 2011/09/24
FreeRTOS port of OpenRISC  (2) 2011/08/01
요즘 하고 있는 것  (2) 2011/07/25
GDB Reverse debugging  (0) 2011/07/21
How to install Boost Library in Mingw  (0) 2011/05/16
집에서 쓰는 키보드, Filco Zero Tenkeyless  (1) 2010/11/07

댓글을 달아 주세요

  1. 윤호 2011/07/30 04:47  댓글주소  수정/삭제  댓글쓰기

    임베디드 분야로 발길을 정했구나!

크리에이티브 커먼즈 라이선스
Creative Commons License


 위에 그림이 일반적인 리모트 타겟을 디버깅하는 방법에 관한 그림인데.......설명하기 많이 복잡하다. 리모트 타켓 디버깅에 대한것은 알아서들 문서를 찾아보도록하고....저 박스들에 대해서 얘기를 하자면 일단 디버거는 GDB를 사용한다능. 물론 이 GDB는 Debugging Target의 아키택쳐에 관한 정보를 알고 있어야 된다. 레지스터는 몇 개구...엔디안은 뭘쓰고 등등등. 이런 내용들을 GDB에 추가하는게 포팅이라능. 

 그리고 GDB Proxy Server라는게 있따능. 이놈이 GDB가 보내주는 커맨드를 받아서 Emulation Board를 조작해서 Debugging Target를 적당히 조작하도록 JTAG 신호를 만들어 낸다. GDB하고 Proxy Server 사이의 통신은 거의 대부분 TCP/IP를 사용한다. 적당한 이유가 있어서 Non-Blocking 소켓을 사용한다능. 사용하는 프로토콜은 Remote Serial Protocol이라고 이상한게 있다.

 Emulation Board를 사용하는 가능 큰 이유는 하나다. PC에는 JTAG 신호를 내보낼 수 있는 포트가 없다능 >_<. 가장 만만한게 Parallel인데 요즘 PC엔 이게 없어서 USB로 많이 옮겨온거 같다능. 그리고 이더넷 같은걸 쓰기도 한다능. 아무튼 인터페이스는 이런걸 쓰고 프로토콜은 Emulation Board에 따라 틀리다능. USB라면 디바이스 드라이버가 제공하는 API를 쓸태고...등등등

 Debugging Target과 Emulation Board사이의 인터페이스는 거의 대부분 JTAG이다. 프로토콜은 Debugging Target에 따라 틀리다. 아키택쳐 메뉴얼이나 해당 아키택쳐의 디버깅 유닛 메뉴얼등을 보면 나와있다.

 빨간색 박스...그러니까 GDB를 포팅하는건 나도 많이 모르고...무지 복잡하다 ㅠ.ㅠ...좋은 HowTo 문서가 있으니 이걸 보고, 포팅 샘플이 있으니 같이 참조 하자능.

ftp://ftp.gnu.org/gnu/gdb/gdb-6.8.tar.gz

 GNU FTP에서 gdb 6.8을 받아서 위의 패치를 적용하면 좋은 포팅 샘플이 된다. 타겟은 OpenRISC다. 위의 문서도 이걸 예로 들어서 설명하고 있다. 이 작업은 타켓 아키택쳐를 많이 알고 있어야 되고...GDB 내부에 대해서도 많이 알고 있어야 된다. GDB internals 라 불리는 문서랑 gdb 압축을 풀었을때 같이 들어있는 HowToPorting 따위의 이름을 가진 문서들이 많은 도움이 된다.

 그리고 노란박스는 적당히 알긴 아는데 길게쓰기도 거시기하고....-_-. 아무튼 그렇타능. 이것도 역시 좋은 문서가 있고 좋은 샘플이 있다능.

 이것도 타켓은 OpenRISC다능. 이 작업도 역시 타켓 아키택쳐(정확히는 해당 타켓의 디버깅 유닛)를 많이 알고 있어야 되고 RSP 프로토콜에 대해서도 잘 알아야 된다. 위의 문서하고 샘플이랑 Redhat.com에 올라와 있는 RSP 관련 문서가 도움이 많이 된다능. 아...물론 Emulation Board를 컨트롤 할 수 있는 방법도 알고 있어야 된다능. 

해당 문서와 샘플 프로그램, 패치등은 멋대로 퍼왔다능 >_<. 읭여읭여
저작자 표시 비영리 동일 조건 변경 허락

'뻘글들' 카테고리의 다른 글

"No available video device" error with SDL  (2) 2010/05/21
프롤로그 Prolog  (2) 2010/04/14
Howto: Porting the GNU Debugger, Writing a RSP Server  (2) 2010/04/02
ctags on windows  (4) 2010/03/13
지름  (4) 2010/03/02
Thank you from Google!  (2) 2010/02/11

댓글을 달아 주세요

  1. 유노 2010/04/04 09:49  댓글주소  수정/삭제  댓글쓰기

    칩 만드는 거임? RISC 나오고 뭐야.. OS 같애.. 어려워..
    그나마 JTAG나오니까 음.. 암보드(타겟보드) 같은 것이로군. 정도의 통밥? ㅋ
    서버-타겟 간의 구동에 관한 프로그램인가.........

Evaluation of synthesizable CPU cores

컴퓨터 구조 | 2009/08/30 11:14 | Posted by DMW
크리에이티브 커먼즈 라이선스
Creative Commons License

http://www.gaisler.com/doc/Evaluation_of_synthesizable_CPU_cores.pdf
링크가 깨졌으면 제목으로 검색하면 볼 수 있을꺼라능. 쪼금 길다능.

 몇일전에 저 문서를 읽어봤다능. LEON2, MicroBlaze, OpenRISC 1200 이라는 세 soft core(좀더 정확히 쓰면 soft microprocessor)를 밴치마크한 문서라능. 소프트 코어란건 뭐냐면...논리 합성기..그러니까 Logic synthesis 로 만 구현된 마아크로프로세러르 말한다능. 따라서 여러가지 프로그러머블 로직 디바이스 Programmable Logic Device 로 구현될 수 있다능. 더 자세한거는 영어로 써놓은 키워드를 위키피디아에서 찾아보라능.

 LEON2는 32-bit RISC SPARC V8 호환 아키택쳐라능. 당근 ISA는 스팍 V8 ISA고 저 문서를 읽어보면 space application을 위한 fault-tolerant processor로 개발되었다고 한다능. 우주응용이라니...뭔가 엄청남! 아무튼  라이센스는 GNU LGPL이고 셋중에서 가장 진보된 아키택쳐구 성능도 가장 좋타능.

 MicroBlaze는 32-bit RISC 아키택쳐고...ISA는 자체 ISA를 쓴다능. 이름은 잘 모르겠지만 그냥 MircoBlaze ISA 일꺼라능 -_-;;. Xilinx에서 밀어주고 있는거라능. 당근 자일링스 FPGA에서 가장 합성이 잘된다능. 성능은 그저 그렇지만 셋중에거 가장 코어 사이즈가 작다능. 저 문서에는 MMU가 업ㅂ다구 하는데...자일링스 홈페이지를 가보면 최신 버젼에선 구현이 된거 같음. 문서가 옛날꺼라 어쩔수가 업ㅂ다능. 라이센스는 Xilinx ISE Design Suite: Embedded Edition 에 포함되어 있는데 이거는 Xilinx Core Site License agreement 하에 배포된다구 한다능. 이 라이센스는 MicroBlaze를 갯수 제한업ㅂ이 쓰고 싶은 만큼 쓸 수 있게 해준다능. 느낌상 거의 꽁짜인거 같다능.

 OpenRISC 1200 OpenCores 라는 이상한 단체에서 만든 32-bit OpenRISC 1000 아키랙쳐의 32비트 RISC 구현이라능. ISA는 당근 OpenRISC1000 ISA고 코어사이즈는 LEON2보다 좀 작고...성능은 MicroBlaze보다 조금 좋다능. 홈페이지를 가보면 여러가지 자랑을 많이 해놨는데...다른 두개랑 비교해보면 좀 구질구질한거는 사실이라능. 라이센스는 GNU LGPL이라능. 그냥 쓸만한 꽁자임.

 저 문서에는 세 아키택쳐에 제공되는 개발툴, 코어 사이즈, 그냥 성능, 코어 사이즈대비 성능, 문서화등의 사용성등을 비교해 놓았다능. 결론만 이야기하면 셋중에서는 LEON2가 가장 좋은 선택이 될꺼라능. 아키택쳐도 가장 진보되있고 사용성도 좋타능. 차선은 MicroBlaze라능. 코어 사이즈 대비 성능이 가장 좋고 자일링스에서 빵빵하게 밀어줘서 그런가 문서화도 매우 잘되어 있다능. 꼴찌는 OpenRISC 1200이라능. 이넘은 최신 구현하고 문서도 싱크가 맞지않고 -_-;;; 제공되는 개발툴인 GNU Toolchain도 몇몇 옵션은 아직 포팅이 되지않았다능. 그러타고 성능이나 코어사이즈에 메리트가 있는것도 아니라능.


한줄 요약
LEON 2 > MicroBlaze > OpenRISC 1200
저작자 표시 비영리 동일 조건 변경 허락

'컴퓨터 구조' 카테고리의 다른 글

Evaluation of synthesizable CPU cores  (7) 2009/08/30
D-Processor datapath block diagram  (0) 2009/04/24
D-Processor Interuppt Simulation  (0) 2008/07/05
D-Processor Architecture  (1) 2008/07/05
Datapath  (0) 2008/04/25
16-Bit Toy Microprocessor  (2) 2008/04/11

댓글을 달아 주세요

  1. Favicon of http://www.dynasys.kr BlogIcon 분당살람 2009/08/30 15:37  댓글주소  수정/삭제  댓글쓰기

    SDL이 뭔진 잘 모르겠는데 오사카 횽 왔다간다능 ^^;

  2. Favicon of http://magicpotato.com BlogIcon 마술감자 2009/09/10 03:05  댓글주소  수정/삭제  댓글쓰기

    꼐임만 만들다가 이런거 보면 무슨말인지 모르겠네용 ㅇ.ㅇ
    쉐이더나 물리가속 카드처럼 논리회로 작성해서 때려박고 쓰게 해주는 그런건가용?

    • Favicon of http://www.filepang.co.kr BlogIcon DMW 2009/09/11 16:43  댓글주소  수정/삭제

      FPGA가 논리회로를 때려박고 쓰개 해주는거고...soft core는 그걸로 프로세서를 만든거라능

  3. 2009/09/24 00:01  댓글주소  수정/삭제  댓글쓰기

    오 굳

  4. heroant 2010/11/25 00:50  댓글주소  수정/삭제  댓글쓰기

    아 읽기 귀찮 오늘은 그만 쉬러 감.