목록전체 글 (252)
Kraklog
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/IxTXA/btspUhDNzGl/ogTaTVmPe5lCPq63zVOl5K/img.png)
. `timescale 1ns/1ps module LED_FSM( input clk, input reset, input i_ledSwitch, output reg o_led ); parameter S_OFF = 1'b0, S_ON = 1'b1 ; reg state = S_OFF, nextState; //state register always @ (posedge clk, posedge reset) begin //next state part if (reset) state
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dES0Hy/btspUiifr0g/zuibE50L1kz3Xta5GFlpAk/img.png)
사용프로그램 : Vivado 사용보드 : BASYS 3 -BASYS3 보드를 선택하기위해서 VIVADO에서 보드 정보를 INSTALL해주면 되지만, 간혹 INSTALL 버튼이 없을 경우 직접 설치하면 되는데 C:\Xilinx\Vivado\(해당버전)\data\boards path에 보드 파일(링크)을 넣어주면 된다. 1. 2 bit Counter `timescale 1ns / 1ps module Counter_2bit( input clk , input reset , output [1:0] o_counter ); reg [1:0] r_counter = 2'b0; assign o_count = r_counter; always @ (posedge clk, posedge reset)begin if (reset)..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/1nLSl/btspUm5Kcct/BDSpkQAGrQJODE0BG1Onw0/img.png)
사용프로그램 : Vivado 사용보드 : BASYS 3 -BASYS3 보드를 선택하기위해서 VIVADO에서 보드 정보를 INSTALL해주면 되지만, 간혹 INSTALL 버튼이 없을 경우 직접 설치하면 되는데 C:\Xilinx\Vivado\(해당버전)\data\boards path에 보드 파일(링크)을 넣어주면 된다. 1. 2x4 Decoder - Schematic 디코더는 n 비트의 2진코드를 최대 2의 n승개의 다른 정보로 바꾸어주는 조합 논리회로이다. 즉, A B와 같이 2개의 입력이 들어오면 4개의 출력을 내보낸다. 디코더를 설계하기 위해서, input을 [1:0]으로 잡아주고, output을 [3:0]으로 잡아 2x4 구조를 만들어주고 각 입력값에 따른 출력을 할당해주어 디코더를 설계해보려 한다...
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/5ptM1/btspPaDYJJj/rrDKEhx24jzMQOAyUewCe1/img.png)
사용프로그램 : Vivado 사용보드 : BASYS 3 -BASYS3 보드를 선택하기위해서 VIVADO에서 보드 정보를 INSTALL해주면 되지만, 간혹 INSTALL 버튼이 없을 경우 직접 설치하면 되는데 C:\Xilinx\Vivado\(해당버전)\data\boards path에 보드 파일(링크)을 넣어주면 된다. 1. Half Adder - Layout 및 시뮬레이션 (링크) 식 : - Schematic input으로 A,B를 선언해주고, Sum을 처리하기 위해 A xor B를 할당해주고, Carry 를 처리하기 위해 A and B를 할당해준다. 출력 값으로 Sum과 Carry를 선언해주면 완료. - Code `timescale 1ns/1ps module HalfAdder ( input i_a, in..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/Epa1C/btsASblGxqI/YTfv9tEcFTLIpEV1780jx1/img.png)
EX1) 환경설정 Quartus - Platform Designer - niosii.qsys Nioss II Processor를 검색해주고 추가해주되, Nios II economy를 선택해준다. 빌드 요소 clk_50 : 50Mhz를 의미함. pl_qsys : 100Mhz 로 동작, error, warning은 최종적으로 셋팅해주었을때 해결되면 된다. nios2_gen2_0 을 F2를 눌러 cpu로 재명명해준다. pll_qsys 에 연결해준다. CPU의 Data , Instruction, interface는 Avalon MM 이다. CPU data 에 data, Instruction, interface가 들어가있기때문에 sytem peripheral의 control slave를 cpu data_maste..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bqPM8b/btsARhTWd8C/ZSGOlYqvffezxS8Ususb80/img.gif)
[SoC의 3가지 핵심 구성 요소] 1. CPU Core 2. Memory 3. 1개 이상의 Peripheral(주변기기) [MCU와 FPGA 차이점] 공통점 : Microcontroller Unit 과 Field Programmable Gate Array (각각 MCU,FPGA) 둘 다 디지털 시스템에서 사용되는 장치. 차이점 : MCU 1. 고정된 하드웨어 : MCU는 일반적으로 하나의 칩 안에 프로세서 (core), 메모리, 주변장치 및 입출력 장치가 통합된 고정된 하드웨어를 가지고 있음. 2. 주로 작은 규모의 시스템에서 사용되며 주로 특정 애플리케이션을 위해 제작되기 때문에 유연성에 제한을 가질 수 있음. 3. MCU는 주로 고등언어를 사용하여 프로그래밍 되며, 이는 개발자에게 편리함을 줄 수 ..