HDLBits-Vector2
·
HDLBits/Verilog
이제는 Vector의 그냥 활용이 문제로 나오는듯? 하다A 32-bit vector can be viewed as containing 4 bytes (bits [31:24], [23:16], etc.).Build a circuit that will reverse the byte ordering of the 4-byte word.32-bit Vector는 4 bytes를 포함한다. byte는 8bit니까.. AaaaaaaaBbbbbbbbCcccccccDddddddd => DdddddddCcccccccBbbbbbbbAaaaaaaa이걸 이렇게 만들라는 문제다.8bit 단위로 떼서 옮기면 될 것 같다.물론 바로 in에서 out으로 assign하면 되지만이렇게 하면 좀더 가독성이 좋고 나중에 기억하거나 수정할때 ..
HDLBits - Vector1
·
HDLBits/Verilog
Vector 선언type [upper:lower] vector_name;Implict Nets - 암시적 Nets 방지하기`default_nettype nonePacked Arrayreg 타입 256-bit mem 변수를 총 8개 선언한 것reg [7:0] mem [255:0]Vector assignwire [7:0] w;와 output [3:0] a가 있을때assign w = a;를 하면 8-bit w wire에 4-bit a가 할당된다고 보면된다.bit수가 다를때 빈자리는 0으로 채워지고 모자란다면 잘려진다.설명은 여기서 끝이고이제 문제를 보자Build a combinational circuit that splits an input half-word (16 bits, [15:0] ) into lowe..
Verilator 설치
·
Hardware/ETC.
이전에 갑자기 WSL을 설치한 이유 -> Verilator를 쓰기 위해Verilator란?SystemVerilog 컴파일러 라고 한다설치방법필요 프로그램 설치sudo apt-get install help2mansudo apt-get install git make autoconf g++ flex bisonsudo apt-get install libfl2 sudo apt-get install libfl-devVerilator 레포지토리 Clonegit clone https://git.veripool.org/git/verilatorVersion 선택 -> 별 생각없이 선택한 Ubuntu 24.04에서는 5.020을 지원한다는 정보를 나중에 발견...https://repology.org/project/veri..
Windows 11 - WSL 설치 및 세팅
·
Hardware/ETC.
Windows Terminal 사용Windows Store에 가면 Terminal이 따로 있는데 기능이 추가된 버전이니 사용해보자WSL 설치Powershell에서 실행실행 후 재부팅wsl.exe --install원하는 배포판 확인wsl.exe --list --online설치wsl.exe --install -d Ubuntu-24.04이름, 패스워드 등 설정 후패키지 미러 주소 변경sudo sed -i 's/archive.ubuntu.com/mirror.kakao.com/g' /etc/apt/sources.list.d/ubuntu.sources패키지 업데이트 + 업그레이드 + 자동제거sudo apt update && sudo apt -y upgrade && sudo apt -y autoremoveZSH 설치..
HDLBits - Vectors
·
HDLBits/Verilog
Vector의 사용법에 대해 알아보는 문제input [2:0] vec이 있을때,각각의 vector를 하나씩 output으로 선언할 수도 있고,통째로 원하는 만큼 선언도 가능하다.쉽게 보면 C언어의 배열? 같은 느낌인데Wire를 묶어서 생각하면 된다고 나는 이해했다.module top_module ( input wire [2:0] vec, output wire [2:0] outv, output wire o2, output wire o1, output wire o0 ); // Module body starts after module declaration assign outv = vec; assign o2 = vec[2]; assign o1 = vec[1]; ..
노력, 방법
·
생각
내가 어디까지 알고 있고 모르는지를 다시 확인해보기 전까지는 알 수가 없다.어쩌면 그 확인하는 방법이 더 오래 걸리고 힘들지라도 더이상 미루면 사상누각이 될 것 같아 블로그를 시작했다.