DE1-SoC 학습을 위해 My_First_Fpga 이라는 Tutorial을 같이 따라할 것이다.
관련 자료(PDF)는 아래 주소에 링크로 첨부하였다.
http://sinawi.tistory.com/10?category=680156
CH 1 introduction은 지난번 포스팅한 내용도 조금 섞여있어서 한번 쭉 읽어보면 될거같다.
CH 2 Assign The Device
Quartus II 프로그램에서 새로운 프로젝트를 만든다
File > New Project wizard
창이 뜨면 프로젝트 경로, 이름을 설정하고, type은 Empty project으로 설정하고 넘어간다.
Add files는 이미 만들어진 Verilog 파일이 있으면 추가 할수 있다. 현재는 없으므로 Next
사용하는 Device의 모델을 찾고 Finish누르면 된다.(Family: Cyclone V / Device: SE Mainstream / name : 5CSEMA5F31C6)
EDA Tool settings 는 뭘하는지 모르지만 이번 튜토리얼에서는 쓰지않아서 패스.
summary는 내가 선택한거 보여준다.
CH 3 Design Entry
File > New > Block Diagram/Schematic File 을 클릭하고
name: my_first_fpga type: Block Diagram/Schematic File(*.bdf) 으로 저장한다.
비슷한 방법으로 Verilog HDL File을 만든다
name: simple_counter.v type: Verilog HDL File(*.v, *.vlg, *.verilog)
Verilog HDL File에 코드를 작성하고 저장한다.
//It has a single clock input and a 32-bit output port
module simple_counter (
CLOCK_50,
counter_out
);
input CLOCK_50 ;
output [31:0] counter_out;
reg [31:0] counter_out;
always @ (posedge CLOCK_50) // on positive clock edge
begin
counter_out <= #1 counter_out + 1;// increment counter
end
endmodule // end of module counter
FIle > Create/Update > Create Symbol Files 를 클릭해서 simple_converter.v 를 Symbol File(.sym)으로 변환한다.
my_first_fpga.bdf에 simple_counter.v을 추가하고 symbol을 추가한다
저장하면 카운터 설계 끝
Altera PLL을 추가하여 clock source를 만들고 PLL clock source를 사용하여 카운터를 구동한다.
PLL은 일정한 clock frequency를 만들어서 카운터의 입력으로 넣는다.
Edit > Insert Symbol 클릭하면 MegaWizard Plug-in Manager 가 뜬다.
'Create a new custom ~' 인 상태로 넘어가자
page2a에서 왼쪽에서 PLL > Altera PLL v13.1
오른쪽 위부터 차례대로 다음과 같은걸 찾아 입력한다.
which device~: Cyclone V for DE1-SoC
which type~: Verilog HDL
what name~: pll.v
Next로 넘어가면 Altera PLL(pll.v)에 관한 창이 뜬다.
위에서 부터 다음과 같이 입력/수정한다.
device speed grade: 6
Reference clock frequency: 50.0 MHz
Enable locked output port 체크 해제
Desired Frequency 5.0 MHz
Finish를 누르면 pll symbol을 사용할수 있다.
PLL 설계 끝
Schemetic 에서 PLL symbol을 추가한뒤에 PLL의 output을 counter의 clock_50 과 연결한다
Input 핀도 하나 추가한다.
Edit > insert Symbol
Libraries > primitives>pin>input >OK
Input을 PLL의 refclk에 연결하고
pin_name1을 더블클릭해서 pin name을 CLOCK_50으로 변경한다
counter의 output 포트를 오른쪽으로 길게 만들고 마우스 우클릭해서 counter[31..0]으로 변경한다
PLL 추가했던 것과 비슷한 방법으로 LPM_MUX를 추가한다
how many data input~: 2
how wide ~: 4bits
어차피 볼사람 없으니 나머지는 pdf 보면서 따라하시길.
어쨌든 만들고 나면 짜잔~ Schematic이 완성되었습니다.
하지만 이것으로 끝난게 아니라 핀도 할당해주어야 한다.
Default TimeQuest SDC File도 만들어주고 컴파일 하면 정말끝
Schematic 만드는거부터 너무 귀찮아져서 대충끝내었다.
나중에 시간이 된다면 상세히 적어야지(안하겠다는뜻)
'STUDY > Others' 카테고리의 다른 글
동아리 정기교육자료 목록 (0) | 2020.12.30 |
---|---|
DE1-SoC Tutorial (3) (0) | 2018.10.07 |
qdz 파일 설치 (install qdz file) (0) | 2018.10.07 |
DE1-SoC Getting Started Guide (0) | 2018.10.07 |
DE1-SoC Software installation (0) | 2018.10.06 |