IT 2014. 7. 18.
Verilog 배열관련 정리
참고 : http://blog.naver.com/beahey/90192889480 배열 선언은reg [7:0] a[3];이렇게 한다. 앞쪽의 "[7:0]"는 배열을 표현보다는 버스의 비트를 나타내고,배열을 뒤쪽의 "[3]" 으로 보고 이해하는 것이 쉽다. 즉 위의 예는 8비트짜리 배열 3개을 가지고 있다는 의미 또한 중요한 것은 포트로 뽑아낼 수가 없다는 엄청 불편한 진실..즉 module의 input/output으로 쓰기 곤란하다는..구체적인 예는 위 참고 사이트 참조 짤은 "Array" ㅋ array by OiMax
IT 2014. 7. 18.
ARM SoC - AHB Default Slave..빈공간에 놓여진 모듈
ARM SoC 개발 중 버스나 Decoder에 보면 default slave 가 있다. 머냐..메모리 맵상에 할당되지 않은 주소(빈공간)를 접근하는 경우 활성화 되는 모듈이다.이름 그대로 디폴트..역할은 단순하다. HREADYOUT은 물론 잘 띄워줘야 하고, 읽기든 쓰기든 끝이 나게 하려면 꼭 띄워줘야하고또 하나, HRESP에 에러를 띄워주는 것. 왜냐면 여기는 빈공간이니까~~ http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka3445.htmlGeneral: What is a default slave?Applies to: AHBAnswerIf the memory map of a system does not define the full ..
IT/리눅스 2014. 7. 18.
리눅스 설치 에러 수정 - /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
원본글은 http://www.howtodoityourself.org/how-to-fix-libld-linux-so-2-bad-elf-interpreter-no-such-file-or-directory.html 설치중에 이런에러를 만나면, (하다보니 자주 만나기는 하다 ^^)/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory 이렇게 해결하자. :)On any RPM based distribution (CentOS/RedHat/Fedora/Suse/Mandriva):yum -y install glibc.i686On any DEB based distribution (Debian/Ubuntu/Mint/Crunchbang):apt-get upda..
IT/Software 2014. 7. 18.
PPPoE 서버 설치 및 구성
참 오래된 기술이다.이런걸 정리해 놓은 게 있으려나..........있지.간단히 국산블로그에서도리눅스에 PPPoE 서버 구축하기 해외 블로그 에서도http://www.howtodoityourself.org/pppoe-server-how-to-do-it-yourself.html 간단히 옮겨보자꾸나. 1. Make sure you have an active internet connection. If not, set it up by using your favorite text editor (I use vim):vim /etc/network/interfaces auto lo iface lo inet loopback iface eth0 inet static address 89.xxx.yyy.zzz #Your pu..
IT 2014. 7. 18.
[verilog] `timescale 1ns/10ps 의미
이것도 검색으로 펌질, 여타 설명이 필요없는 간결한 자료`timescale 1ns/10ps앞에 숫자는 해당 파일내에서 쓰이는 숫자들의 단위를 나타냄..즉 #2 이렇게 쓰여있다면 2ns를 나타냄뒤의 숫자는 시뮬레이터에서 많이 쓰일 것 같은데 코딩에서는 별 효과가..무튼 소수점을 허용하려면 어디까지 해야할까를 나타내야 하는데 그 때 쓰이는 최소 단위설명은 아래 참고. [출처] [verilog] timescale에 대하여|작성자 j0hnch01[출처] [verilog] timescale에 대하여|작성자 j0hnch01 assign #5 foo = tiger ; 이 문장을 가만히 보면 단위가 없습니다. '5'의 의미는 무었일까요? ...여기서 '5'는 5ns가 될 수도 있지만, 5us, 5ms 심지어는 5sec..
IT 2014. 7. 18.
IPv6 EUI-64bit address 생성하기 - IPv6
(원본글 https://supportforums.cisco.com/document/100566/understanding-ipv6-eui-64-bit-address) MAC 어드레스로 Interface-ID를 생성해 내는 방식에 관한 것이다.약간 변경된 것이 있다는 책의 내용을 보고 웹 서칭..만드는 방법은 아래 그림과 같다. 문제는 맨 왼쪽 바이트의 2번째 비트이다.이 비트가 로컬이냐 글로벌(?)이냐를 나타내는 비트.이전 EUI-64의 경우 '1'이 로컬, '0'이 글로벌(영어로 univeral이네 ^^)이었는데,Modified EUI-64에서는 이를 뒤집었다고.The reason for inverting can be found in RFC4291 section 2.5.1. 일단, 우리는 최신껏만 기억하..
IT 2014. 7. 18.
AHB slave 코드 조각 - Byte access
AMBA bus를 사용하는 경우, 바이트별 접근을 위해 판단하는 시그널 생성 코드 (참고용, 책임 못짐 ^^) // Generate byte access from AHB busassign byte0_access = (HSIZE[1] | ((HADDR[1]==1'b0) & HSIZE[0]) | (HADDR[1:0]==2'b00));assign byte1_access = (HSIZE[1] | ((HADDR[1]==1'b0) & HSIZE[0]) | (HADDR[1:0]==2'b01));assign byte2_access = (HSIZE[1] | ((HADDR[1]==1'b1) & HSIZE[0]) | (HADDR[1:0]==2'b10));assign byte3_access = (HSIZE[1] | ((HAD..
IT 2014. 7. 17.
Nest Nurtures New IoT Protocol
(via Nest Nurtures New IoT Protocol | EE Times)어제 오늘 많이 기사가 나오네요. 역시 구글인가~~ 무튼 링크된 기사를 읽어보면 다양한 무선기술들을 검토했으나 이러이러해서 개발하게 되었다는 얘기가 있어 인용해 본다. Nest's engineers considered a wide variety of home automation protocols before deciding they needed to develop a new one. "WiFi has single points of failure like an access point," so it was not suitable for the device-to-device mesh, says Boross. WiFi는 mesh..
IT 2014. 7. 17.
Xilinx ISE 에서 ngc 파일 사용하기
쉽다. 특정 IP나 module에 대한 합성된 ngc 파일을 가지고 있다면, ISE project에 간단하게 넣어서 사용할 수 있다. 더 간단할 수 있는데 툴이 약간 신경을 덜 써주는 것 같기도 하다. (그냥 ngc 파일만 add project 하면 되련만 ㅎ) 인터넷을 검색하면 아래의 글이 나온다. 여기가 정답인듯How-do-I-use-a-NGC-file-toanother-ISE-project그래도 간단히 정리해 보면, 그 다음 프로젝트 폴더에 해당 ngc파일을 복사해 둔다. (다른 폴더에 해도 된다. 그럼 아래 그림에서 해당 Path를 지정해 주면 된다.) 1. 일단 ngc 모듈의 이름을 동일하게 가진 빈파일을 하나 만들어야 한다. 여기서는 Black box로 표현하고 있다. 예제를 간단히 만들면 m..
IT 2014. 7. 17.
Xilinx NGC netlist file 변환 - Verilog top 파일 만들기
.ngc 파일에서 vhdl, verilog top 파일 만들기 ISE를 쓰는 경우, ngc파일을 가지고 있어 사용하는 경우 top파일이 필요하기도 하다.간단하게 ngc에서 top 파일 만드는 방법http://www.fpgadeveloper.com/2011/08/how-to-read-an-ngc-netlist-file.html To convert the netlist into VHDL type “netgen -ofmt vhdl filename.ngc“. Netgen will create a filename.vhd file.To convert the netlist into Verilog type “netgen -ofmt verilog filename.ngc“. Netgen will create a filen..
IT 2014. 7. 17.
Xilinx memory 초기화 파일 생성하기
Xilinx ISE를 통해 memory를 만들어 쓰다 보면, 초기화파일을 지정할 수 있도록 되어 있다.(그냥 소스레벨에서 배열로 선언하고, $readmemh 로 불러들여도, FPGA에 구울때 보면 초기값이 간단하게 들어오긴 하던데 ^^ 무튼) 그 파일 확장자가 .coe 파일이다. 생소하다. 구글링을 통해 찾자. http://sourceforge.net/projects/bin2coe/files/This is the Bin2Coe project ("bin2coe")This project was registered on SourceForge.net on Apr 17, 2011, and is described by the project team as follows:Small utility in C to conv..
IT 2014. 7. 17.
Nexys™3 Spartan-6 FPGA Board
제품 링크 : http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,897&Prod=NEXYS3FPGA가 조금 작아서, 이정도 레벨에는 간단하게 ARM Slave Peri 정도 테스트가 가능하겠다.보통 Xilinx에서 slice 로 gate count를 표현을 해놓으니 감이 없어서 간단하게 tm으로 적어둔다. UART, PWM, I2C, SPI 머 이런 인터페이스 블럭은 올려서 해 볼 만한 보드다운로드 툴이 따로 제공되니 다른 고민은 좀 덜하고 설계에 집중가능해당 홈페이지에서 필요한 자료 몇개 링크 정보 가져와서 저장5/31/11 Nexys 3 schematicsDownload1/21/14 Nexys 3 reference manualDownload3..
