어떻게 하면 정기적으로 블로그에 글을 쓸 수 있을까?어렵다...
unipro 2.0 스펙을 공부하던 도중 unrolling IDLE sequence를 언급한 문단에서 의문이 떠올랐다. spec 어디에서도 unrolling이라는 단어를 사용하지 않았기 때문에 의미를 이해하지 못했다. 해당 spec을 제정한 MIPI alliance의 bugzilla라는 홈페이지에서 해당 문장이 포함되기까지의 논의 과정를 발견할 수 있었다. 1. 정상적인 IDLE sequence라면 mk3 부터 시작해서 로 종료될 것이다. 2. 하지만 IDLE sequence 전송 중 발생한 오류로 인해 의도하지 않은 symbol으로 바뀌어 전송될 수 있다. 2-1. 중간에 발생한 오류라면 IDLE sequence이 종료되지 않으며 (IDLE sequence에 대한 처리인 unrolling도 계속 수행)..
외부 표현 포트 // with controller input directory_start output directory_done output hit_state -> hit_state에 따라 컨트롤러가 rsp_valid, req_ready를 보낼 것인지 확인함. // with core input [31:0] directory_address input [31:0] directory_input_data input [31:0] directory_wren output [31:0] directory_output_data // LRU는 디렉토리 내부에 내장하기 // with WB output w_address; output w_data; input w_done; // with FETCH output f_address..
외부 기능 0->1->0 펄스를 세는 기능을 함. 액티브엣지 시점에서 외부 포트 input source output cnt 동작 1. source가 1이면 internal_cnt가 1이 할당됨. 2. source가 0이되면 internal_cnt가 1인지 확인하고 그렇다면 cnt값을 1만큼 증가시킴. 그리고 다음 펄스를 위해 internal_cnt를 0으로 초기화시킴. // Code your design here module pulse_counter( input source, output reg [3:0] cnt, input clk, input rstn ); reg internal_cnt; always @(posedge clk or negedge rstn) begin if (!rstn) begin int..
외부 fetch 포트 // between controller input fetch_start output fetch_done // between directory input [31:0] fetch_address output [31*8:0] fetch_cache_line output fetch_directory_done // between sram output req_valid; output req_wren; output [31:0] req_addrss; input req_ready; input rsp_valid; input [31:0] rsp_data; output rsp_ready; wb 기능 1. controller에서 fetch_start가 들어오면 일련의 동작을 시작한다. 2. 캐시 디렉토리로부터..
외부 wb 포트 // between controller input wb_start output wb_done // between directory input [31:0] wb_address input [31*8:0] wb_cache_line // between sram output req_valid; output [31:0] req_data; output req_wren; output [31:0] req_addrss; input req_ready; wb 기능 1. controller에서 wb_start가 들어오면 일련의 동작을 시작한다. 2. 캐시 디렉토리로부터 wb_address와 wb_cache_line을 통해 값을 전달받는다. 3. 4바이트 단위로 Sram에 데이터를 8번 반복해서 전달한다. 4. ..
`timescale 1ns/1ps module tb_wb_block; reg clk; reg rstn; ////////////// reg wb_start; wire wb_done; // between directory reg [31:0] wb_address; reg [(32*8)-1:0] wb_cache_line; // between sram wire req_valid; wire [31:0] req_data; wire req_wren; wire [31:0] req_address; reg req_ready; ////////// initial begin clk = 1; forever begin #10 clk = ~clk; end end wb_block u1( .wb_start(wb_start), .wb_do..
// Code your design here module wb_block( // between controller input wb_start, output reg wb_done, // between directory input [31:0] wb_address, input [(32*8)-1:0] wb_cache_line, // between sram output reg req_valid, output reg [31:0] req_data, output reg req_wren, output reg [31:0] req_address, input req_ready, input clk, input rstn ); // state localparam IDLE = 1'b0; localparam EXEC = 1'b1; /..
// Code your design here module pulse_counter( input source, output reg [3:0] cnt, input clk, input rstn ); reg internal_cnt; always @(posedge clk or negedge rstn) begin if (!rstn) begin internal_cnt = 0; cnt = 0; end else begin if (source == 0) begin internal_cnt = 1; end else begin if (internal_cnt == 1) begin cnt = cnt+1; internal_cnt = 0; end else begin cnt = cnt; internal_cnt = 0; end end e..
// Code your testbench here // or browse Examples module tb_top; reg clk; reg source; wire [3:0] cnt; reg rstn; initial begin clk = 1; forever begin #10 clk = ~clk; end end // Instantiate device under test pulse_counter u1(.source(source), .cnt(cnt), .clk(clk), .rstn(rstn)); initial begin $dumpfile("dump.vcd"); $dumpvars(1, tb_top); rstn = 1; source = 0; #1 rstn = 0; #1 rstn = 1; #1 source = 1; ..
호소다 마모루 감독의 애니메이션 을 봤다. 애니메이션은 보호자를 잃고 가출한 아이가 짐승의 세계에서 괴물의 제자가 되어 성장해 나가는 이야기를 담고 있었다. 아이를 거두어 준 괴물은 그 세계에서 외톨이였다. 괴물은 그 세계의 우두머리가 될 만한 충분한 가능성을 가지고 있는 존재였지만 곁에서 지도해주는 스승이 없어 잠재력을 발휘하지 못하고 있었다. 그래도 괴물은 다른 상대에게 지고 싶지 않았기 때문에 인간의 아이를 제자로 받아들였다. 괴물이 아이를 만나고 스승을 자처하면서 괴물의 마음가짐과 태도는 달라지게 되었다. 초보 스승과 초보 제자였기에 여러 곡절이 있었지만 아이는 괴물의 아래에서 몇 해가 지나도록 수련을 하면서 어엿한 소년이 되었고 괴물 또한 아이의 성장에 맞춰 실력을 다듬으며 함께 성장하였다. 어..
2023.05.04 모닝 루틴 - 쓰카모토 료
2023년 4월 17일에 시청한 애니메이션 은 요괴와 인간의 만남, 그리고 그 사이에서 싹트는 애정을 그리고 있는 작품이다. 소녀가 성장하면서 느끼는 사랑과 소년의 상처가 치유되어 가는 과정을 잔잔하면서도 세밀하게 묘사하여 보는 이에게 깊은 감동을 주고 있다. 여름 방학을 맞이하여 할아버지 댁에 놀러 온 소녀가 요괴의 숲에서 미아가 되었을 때 소년을 만나면서 이야기가 시작된다. 소년은 자신의 몸을 구성하는 주술이 풀리는 것을 막기 위해 그녀와 계속하여 거리를 두지만 소녀의 순수함에 매료되어 마음만큼은 가깝게 대해준다. 여러 해의 여름을 소녀와 함께 보내면서 그 둘은 서서히 가까워졌다. 소년은 소녀를 요괴들의 여름 축제에 초대하며 같이 즐기지만 우연히 인간과 접촉하고 만다. 서서히 사라져 가는 소년은 그제..
23년 3월에 한국에서 신카이 마코토 감독의 이라는 극장판 애니메이션이 개봉되었다. 개인적인 사정이 있었던 탓에 나는 개봉 당시에 바로 보지는 못했다. 개봉당일에 보지 못하였기에 애니메이션에 대한 기대감은 매우 컸다. 은 고등학생인 스즈메가 토지시인 소타와 함께하는 이야기를 담고 있었다. 소타는 일본 열도 아래에 잠들어있는 기운이 폐허에 방치된 뒷문을 통해 빠져나오지 않도록 문을 잠그는 일을 하고 있었다. 소타가 스즈메가 살고 있는 도시에 방문했을 때 스즈메가 소타의 매력적인 외모에 이끌려 소타를 찾다 그만 소타의 일을 방해하고 말았다. 소타는 그 사건 이후 스즈메의 도움없이는 활동할 수 없는 모습이 되었고, 스즈메는 그런 소타를 도와 소타의 일을 도와주었다. 소타가 위기를 겪을 때 스즈메는 소타를 구해..
23년 2월 8일에 응시한 컴퓨터활용능력 1급에 합격했습니다. 총 수험 기간은 2 개월 정도였습니다. 시험은 모 회사에서 출판한 책을 바탕으로 준비했습니다. 첫 파트인 엑셀은 이전에도 다루어 본 적이 있어서 익히는 데 어려움이 없었지만 두번째 파트인 엑세스는 처음이었기에 배우는 데 시간이 걸렸습니다. 하기 싫을 때도 있었지만 하루에 한 단원씩 풀다보니 실력이 늘어가는 게 느껴졌습니다. 컴퓨터활용능력 시험에서는 엑셀과 엑세스 기능 중 매우 일부분만을 대상으로 하고 있습니다. 따라서 모든 것을 완벽하게 익히려 하는 것보다는 시험에 자주 나오는 기능들을 위주로 공부를 하는 것이 고득점에 도움이 되리라 생각합니다. 처음 접할 때는 문제의 지문을 읽고 나서 답안을 보며 따라하는 식으로 기능을 익혔습니다. 그리고 ..
- Total
- Today
- Yesterday
- gem5
- 건이의 특제 떡국 끓이기
- recursive
- 너비우선탐색
- 백준
- 큐
- Git
- C언어
- 영어 어휘
- 스택
- Push
- 이진탐색
- 애니메이션
- 영화
- 구조체
- 정렬
- C++
- 알고리즘
- 구현
- 취미
- backtracking
- 메이플스토리
- 재귀함수
- BOJ
- 완전탐색
- 백트래킹
- 이분법
- Verilog
- 베릴로그
- BFS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |