요즘 전세계 적으로 me too운동(?)이 활발하게 벌어지고 있는데

[링크 : http://news.chosun.com/site/data/html_dir/2018/01/30/2018013001857.html]

[링크 : http://science.ytn.co.kr/program/program_view.php?s_mcd=0082&s_hcd=0013&key=201712061603338926]


개인적으로 느껴지는 이 꺼림직함은

맹수에서 고기 덩어리로 전락한 존재에 대한 조롱을 기반에 두는 게 아닐까 생각이 든다.


물론 여자라서, 약자라서 이야기 못하다

누군가가 이야기를 꺼냄으로서(약자들 사이에서 그나마 강자)

자기와 동조화하고, 힘을 얻으며 자기 치유를 이끌어 내겠지만


반대로 자기 기억을 조작해 나가면서

(마음이란 교활해서 자신이 살아남기 위해 거짓 기억을 쉽사리 만들곤 한다)

누군가를 망가트리며 얻는 쾌감과 그 사람의 생사여탈권을 쥔다는 느낌, 즉 내가 그 자 보다 우위에 선다라는 점에서

악용의 소지로 인한, 그리고 운동 자체의 방향성에서 위험한 느낌을 받는게 아닐까 한다.


물론 지금까지 밝혀지는 영화감독이라던가 상사에 의한 성추행을

옳다는 긍정하는 것은 아니며 죄를 경감하거나 감싸려는 것은 아니지만

타인에 의해 주입당한 가짜 기억으로 인해 엉뚱한 사람이 피해를 입거나

(속담에 세 사람이면 없던 호랑이도 만든다)

[링크 : http://scienceon.hani.co.kr/?document_srl=118328]

필요 이상으로 허위 진술들로 인해 가중 처벌 당하는 경우도 발생할 수 있다고 보여진다.


어떤식으로 보면 네트워크 상에서 벌어지는 이러한 현상 자체는

고발의 형태를 띄지만 체험의 네트워크를 통한 기억의 동기화를 통해

과장되고, 포장되며, 휘둘러질 가능성이 너무 높아 보인다.


일단 무고라고 하더라도, 그 사람의 사회적 생명 자체는

여자에 의해서 내질러진 상황에서 끝나버리고, 사람들에게 진위는 중요하지 않으니 말이다.



죽은 자는 말이 없다.

문장 그대로, 죽은 사람은 말을 할 수 없다로 해석을 할 수도 있지만

죽여 버리면 억울하게 덮어 씌우더라도 해명할 수 없기에 더 이득이다 라고 해석 될 수도 있다.


여자들의 공감능력을 바탕으로 벌어지는

이번 me too 운동에 대해서는 솔찍히 대세를 탔기에 거스를 순 없겠지만

그럼에도 불구하고 운동의 방향성에 대해서는 고민을 해봐야 하지 않나 생각이 든다.


+

기사를 검색하다 보니 유사한 논조가 조금 보이긴 한다.

[링크 : http://www.huffingtonpost.kr/2018/01/17/story_n_19019788.html]

[링크 : http://news.joins.com/article/22276976]

[링크 : http://news.chosun.com/site/data/html_dir/2018/01/10/2018011000655.html]


국내 기사로는 일부 보수층에.. 라는 식으로만 나오네

[링크 : http://v.media.daum.net/v/20180205103948357]


+

[링크 : http://v.media.daum.net/v/20180205115702338]

Posted by 구차니
embeded/FPGA - ALTERA2018. 2. 4. 21:29

설마.. 리셋 안걸어 줘서 그런건 맞겠...지?!?!

QSYS와 SOPC 예제를 보니 이게 들어있네..

에이.. 설마.. 아니길 빌지만..

찔리는게 너무 많다...... ㅠㅠ


//=======================================================

//  Structural coding

//=======================================================


assign reset_n = 1'b1; 


sof + Run As로는 그럼 왜 돈거야?

자체적으로 리셋을 걸어주는건가?


2018.02.05

해보니.. 여전히 플래시 굽기는 실패..

도대체 머가 문제일까..


+

흐음.. 과연...?

You need change in Pin Planner:


DRAM_LDQM to DRAM_DQM[0]

DRAM_UDQM to DRAM_DQM[1]


and


DRAM_BA_0 to DRAM_BA[0]

DRAM_BA_1 to DRAM_BA[1]



And then, you can assign these pins to your Nios II as buses.


DRAM_DQM[1..0]

DRAM_BA[1..0]


You must do this because Nios II in SOPC Builder 9.1 SP2 has buses for these connections to the SDRAM  

[링크 : https://www.alteraforum.com/forum/showthread.php?t=4984]


+

전에 무시하고 지나간 사항인데..

플래시에 굽다 보니.. Run AS로 램에서 돌리는거랑은 다르게

reset vector가 EPCS로 되어 있어야 하는거 아닌가? 라는 생각이 드네

Nios® II Boot from EPCQ or EPCS in Quartus® II 13.1

Workaround/Fix

3.      Make sure the Nios II’s Reset Vector is pointing at EPCS/EPCQ Controller

[링크 : https://www.altera.com/support/support-resources/knowledge-base/solutions/rd11192013_118.html]


Nios II Processor Application Copied from EPCS Flash to RAM Using Boot Copier

The EPCS address space is not mapped into the Altera Avalon EPCS Flash Controller’s Avalon MM slaveinterface. Instead, read or write accesses are done through CSRs. Upon system reset, the EPCS device needs to be initialized before usage.

For these reasons, the EPCS controller-based boot copier is required for initializing the EPCS device and copying the Nios II application to RAM for execution.

The EPCS controller instantiates a block of boot ROM internally at its base address (offset 0x0, just before EPCS controller’s CSRs) for storing the boot copier. Nios II reset vector offset must set to EPCS controller base address, such that upon system reset the boot copier is executed first to initialize the EPCS controller and device.

[링크 : https://www.altera.com/en_US/pdfs/literature/ug/niosii_generic_booting_methods.pdf]

'embeded > FPGA - ALTERA' 카테고리의 다른 글

de0-nano communicate pc 로 검색결과  (0) 2018.02.14
Nios II 관련 링크  (0) 2018.02.13
clock bridge  (0) 2018.02.03
끄아아아아아 EPCS 안돼 ㅠㅠ  (4) 2018.02.03
Nios II EPCS 및 SDRAM  (0) 2018.02.03
Posted by 구차니
하드웨어/Storage2018. 2. 4. 15:56

IO 성능이 후달리는 ARM 계열에서는 별 의미없나?

오후 3:54 2018-02-04 53.53%

오후 4:05 2018-02-04 54.96%

오후 4:19 2018-02-04 56.69% 

오후 4:23 2018-02-04 57.15%


10:53:17에 시작해서 15:54:00 에 53.53%인데

5시간에 약 50% 시간당 10.7%

근데 설정을 해주어도 웹으로 보고 있어서 그런지 모르겠지만 7.24%/시간 정도 예상되네..

머야 도대체.. ㅠㅠ

오후 6:21 2018-02-04 75.30% 

두시간 만에 18.15% 증가. 라고 하면 많이 보이긴 한데 앞서 크게 빨라졌다고 하긴 애매하네



$ sudo -i


We trust you have received the usual lecture from the local System

Administrator. It usually boils down to these three things:


    #1) Respect the privacy of others.

    #2) Think before you type.

    #3) With great power comes great responsibility.


Password:

# echo 200000 >> /proc/sys/dev/raid/speed_limit_min

# cat /proc/sys/dev/raid/speed_limit_min

200000

# cat /proc/mdstat

Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]

md2 : active raid1 sda3[0]

      3902196544 blocks super 1.2 [1/1] [U]


md3 : active raid1 sdb3[0]

      3902196544 blocks super 1.2 [1/1] [U]


md1 : active raid1 sdb2[1] sda2[0]

      2097088 blocks [2/2] [UU]


md0 : active raid1 sda1[0] sdb1[1]

      2490176 blocks [2/2] [UU]


unused devices: <none> 


[링크 : http://11q.kr/g5s/bbs/board.php?bo_table=s11&wr_id=1614]

[링크 : https://www.synology.com/.../How_to_login_to_DSM_with_root_permission_via_SSH_Telnet]

Posted by 구차니
하드웨어/Storage2018. 2. 3. 21:03

디스크 2를 교체했더니 이런 에러가 발생하는건가?


그나저나 저 시스템 파티션이 머하는건진 모르겠지만

DISK 1, DISK 2 위치 바꾸고 그러다 보니

바탕화면에 파일 스테이션 바로가기도 막 사라지고 난리임

아마도 그런 정보가 시스템 파티션에 저장되고

DSM 자체는 시놀로지 본체 FLASH에 저장이 되는 듯?

(하드 다 뽑고도 부팅이 잘만 됨)


[링크 : http://likehood.net/230]


너무 심플하게 누르세요 정도로 끝.. 아니

시스템 파티션이 머하는 애냐고~ ㅠㅠ

[링크 : https://originwww.synology.com/.../volume_diskgroup_repair]

Posted by 구차니
하드웨어/Storage2018. 2. 3. 20:55

아무생각 없이 처음에 4T + 2T로 구성하다 보니 SHR로 되었는데

2T 하드가 슬슬 맛이 가는 징조가 보여 교체하니 문제가 발생한다.


1. 디스크 2를 2T에서 4T로 꽂으니 SHR로 구성되며 두개 하드 동기화

2. 4T다 보니. 한 10시간 걸린듯.. 망할

3. 하드 하나 뽑고 끄고 설정해서 쓰려니.. SHR 인데 문제발생 상태라 켜지면 계속 삑삑댄다 -_- 줸장

4. 결국에는 SHR 구성해서 RAID1 할게 아닌, 나 처럼 가난한 사람이라면 처음부터 '기본'으로 설정하는게 낫다

5. 물론 데이터 안정성은 맛동산 넘어 즐거운 파티...

6. 아무튼 4T + 2T SHR은 6T로 오류해결 기능 0로 설정이 되는 듯



Posted by 구차니
embeded/FPGA - ALTERA2018. 2. 3. 16:08

Nios II에서 EPCS가 안되서 QSYS 버전의 예제를 보니

Clock Bridge라는게 있어서 검색해 보는데..

그냥 PLL에서 나오거나 50MHz 클럭 소스 바로 연결해주면 안되는 건가?


[링크 : https://www.altera.com.cn/zh_CN/pdfs/literature/hb/qts/qsys_system_components.pdf]

'embeded > FPGA - ALTERA' 카테고리의 다른 글

Nios II 관련 링크  (0) 2018.02.13
Nios II 안된 이유가.. 설마..  (0) 2018.02.04
끄아아아아아 EPCS 안돼 ㅠㅠ  (4) 2018.02.03
Nios II EPCS 및 SDRAM  (0) 2018.02.03
altera speed grade  (0) 2018.02.03
Posted by 구차니
개소리 왈왈2018. 2. 3. 15:43

얘네 지하 한 10000층 쯤에 박힌애들 아니었나?

슬금슬금 다시 나오네


한기총 거짓교리 CBS 거짓보드

와보라! 참진리가 있는 신천지로!


'개소리 왈왈' 카테고리의 다른 글

세상에 나쁜 개는 없다 - 차우차우 편  (0) 2018.04.05
네이트온 불안정  (0) 2018.03.12
연고 크림 차이?  (0) 2017.11.19
사마귀 수술  (0) 2017.11.17
color gamut  (0) 2017.10.05
Posted by 구차니
embeded/FPGA - ALTERA2018. 2. 3. 14:03

머가 문제야 도대체 ㅠㅠ


처음 nios2를 올리면 EPCS의 시작 주소부터 검색을 하는데

유효한 레지스터는 찾았으나.. EPCS 서명과 식별자도 다 맞는데

EPCS layout data가 없다고.. 근데 레이아웃 데이터는 또 머야

Info: 2018. 2. 3 오후 1:47:39 - (정보) elf2flash: args = --input=D:/Download/DE0_NANO/software/hello_world_0/hello_world_0.elf --output=D:/Download/DE0_NANO/software/hello_world_0_bsp/flash/hello_world_0_epcs_flash_controller_0.flash --epcs --verbose

Info: 2018. 2. 3 오후 1:47:39 - (미세) elf2flash: Starting

Info: 2018. 2. 3 오후 1:47:39 - (보다 미세) elf2flash: Program Record: 3964 bytes destined for 0x4008000

Info: 2018. 2. 3 오후 1:47:39 - (보다 미세) elf2flash: Program Record: 724 bytes destined for 0x4009250

Info: 2018. 2. 3 오후 1:47:39 - (보다 미세) elf2flash: Start Record: 4008020

Info: 2018. 2. 3 오후 1:47:39 - (미세) elf2flash: Done

Info: Using cable "USB-Blaster [USB-0]", device 1, instance 0x00

Info: Resetting and pausing target processor: 

Info: OK

Info: Reading System ID at address 0x04012030: 

Info: verified

Info: Processor data bus width is 32 bits

Info: Looking for EPCS registers at address 0x04011000 (with 32bit alignment)

Info:   Initial values: 0001703A 04C00074 9801483A 9CFFF804 983FFD1E 0000203A

Info:   Not here: reserved fields are non-zero

Info: Looking for EPCS registers at address 0x04011100 (with 32bit alignment)

Info:   Initial values: 93000237 6300080C 603FFD26 90000335 A8000C26 03010004

Info:   Not here: reserved fields are non-zero

Info: Looking for EPCS registers at address 0x04011200 (with 32bit alignment)

Info:   Initial values: 02C02004 002EE03A 00000F06 90000335 4000683A 0017883A

Info:   Not here: reserved fields are non-zero

Info: Looking for EPCS registers at address 0x04011300 (with 32bit alignment)

Info:   Initial values: 003FD006 5280040C 501496FA 701CD07A 729CB03A 843FFFC4

Info:   Not here: reserved fields are non-zero

Info: Looking for EPCS registers at address 0x04011400 (with 32bit alignment)

Info:   Initial values: 00000000 00000000 00000260 00000000 00000000 00000001

Info:   Valid registers found

Info: EPCS signature is 0x16

Info: EPCS identifier is 0x010216

Info: Leaving target processor paused

Error: No EPCS layout data - looking for section [EPCS-010216]

Error: Unable to use EPCS device

Error: Error code: 8 for command: nios2-flash-programmer "D:/Download/DE0_NANO/software/hello_world_0_bsp/flash/hello_world_0_epcs_flash_controller_0.flash" --base=0x4011000 --epcs --sidp=0x4012030 --id=0x0 --timestamp=1517632677 --device=1 --instance=0 '--cable=USB-Blaster on localhost [USB-0]' --program --verbose 


아무튼 한번더 Start 눌러서 굽기 시도 하면

0x0000 0000을 못 찾고는 바로 배를 짼다.. 도대체 머야 -_-

Info: 2018. 2. 3 오후 1:47:52 - (정보) elf2flash: args = --input=D:/Download/DE0_NANO/software/hello_world_0/hello_world_0.elf --output=D:/Download/DE0_NANO/software/hello_world_0_bsp/flash/hello_world_0_epcs_flash_controller_0.flash --epcs --verbose

Info: 2018. 2. 3 오후 1:47:52 - (미세) elf2flash: Starting

Info: 2018. 2. 3 오후 1:47:52 - (보다 미세) elf2flash: Program Record: 3964 bytes destined for 0x4008000

Info: 2018. 2. 3 오후 1:47:52 - (보다 미세) elf2flash: Program Record: 724 bytes destined for 0x4009250

Info: 2018. 2. 3 오후 1:47:52 - (보다 미세) elf2flash: Start Record: 4008020

Info: 2018. 2. 3 오후 1:47:52 - (미세) elf2flash: Done

Info: Using cable "USB-Blaster [USB-0]", device 1, instance 0x00

Info: Resetting and pausing target processor: 

Info: OK

Info: Reading System ID at address 0x04012030: 

Info: verified

Info: Processor data bus width is 32 bits

Info: Looking for EPCS registers at address 0x04011000 (with 32bit alignment)

Info:   Initial values: 0001703A 04C00074 9801483A 9CFFF804 983FFD1E 0000203A

Info:   Not here: reserved fields are non-zero

Info: Looking for EPCS registers at address 0x04011100 (with 32bit alignment)

Info:   Initial values: 93000237 6300080C 603FFD26 90000335 A8000C26 03010004

Info:   Not here: reserved fields are non-zero

Info: Looking for EPCS registers at address 0x04011200 (with 32bit alignment)

Info:   Initial values: 02C02004 002EE03A 00000F06 90000335 4000683A 0017883A

Info:   Not here: reserved fields are non-zero

Info: Looking for EPCS registers at address 0x04011300 (with 32bit alignment)

Info:   Initial values: 003FD006 5280040C 501496FA 701CD07A 729CB03A 843FFFC4

Info:   Not here: reserved fields are non-zero

Info: Looking for EPCS registers at address 0x04011400 (with 32bit alignment)

Info:   Initial values: 00000016 00000016 00000260 00000000 00000016 00000001

Info:   Not here: reserved fields are non-zero

Info: Leaving target processor paused

Error: No EPCS registers found: tried looking at addresses    

Error:  0x04011000,

Error:  0x04011100,

Error:  0x04011200,

Error:  0x04011300 and

Error:  0x04011400

Error: Error code: 8 for command: nios2-flash-programmer "D:/Download/DE0_NANO/software/hello_world_0_bsp/flash/hello_world_0_epcs_flash_controller_0.flash" --base=0x4011000 --epcs --sidp=0x4012030 --id=0x0 --timestamp=1517632677 --device=1 --instance=0 '--cable=USB-Blaster on localhost [USB-0]' --program --verbose 

일단 EPCS 레지스터를 못 찾았다 에러를 보면


B.5 "No EPCS Registers Found" Error

When you run the flash programmer to program an EPCS device, you get the error:

"No EPCS registers found: tried looking at addresses...."

B.5.1 Probable Cause

The flash programmer can connect with a Nios II JTAG debug module in the FPGA, but it cannot successfully find an EPCS device located at the specified base address.

>> 플래시 프로그래머는 FPGA의 Nios II JTAG 디버그 모듈과 연결할 수 있지만, 지정된 base address에서 EPCS 장치를 발견하는데 성공하지 못했다.

B.5.2 Suggested Actions

• Reconfigure the FPGA with a valid target design via JTAG using the Intel Quartus Prime programmer. If the FPGA is configured by another method, such as by a configuration controller, the pins that connect to the EPCS device might be disabled.

>> 쿼터스 프로그래머를 이용해 JTAG으로 FPGA를 재설정하라. 만약에 FPGA가 configuration controller 와 같은 다른 방법으로 설정된다면 EPCS 장치와 연결되는 핀들이 비활성화 되었을 수 도 있다.

• If you are using quartus_pgm --nios2 from the command line, ensure you specified the correct base address for your EPCS device. You can find the flash memory's base address in Platform Designer.

>> 커맨드 라인에서 quartus_pgm --nios2 을 사용한다면, EPCS 장치에 올바른 base address가 지정되었다 확인하라. Platform Deisigner의 플래시 장치에서 base address를 찾을 수 있다.

• Ensure that the EPCS device is correctly connected to the FPGA on the board. Verify the EPCS connection by running the "Test EPCS" routine in the "Memory Test" software template provided by the Nios II EDS. If the test fails, there is a problem with your memory connection. There are two places to look for the problem:

>> EPCS가 FPGA 보드에 정상적으로 연결되었는지 확인하라. Nios II EDS에 소프트웨어 템플릿으로 제공된 "Memory Test"안의 "Test EPCS"를 실행함으로서 EPCS 연결을 확인하라.

— The physical connection on your target board

— The pin assignments on the top-level FPGA design

• Use the Intel Quartus Prime Programmer to program the EPCS device directly via a JTAG download cable, and verify that the EPCS device successfully configures the FPGA.

• Run quartus_pgm --nios2 from the command line with the --epcs parameter. This command displays information about the flash memory in the EPCS device. For more information, refer to the "Using the Flash Programmer from the Command Line" chapter.

Related Links

Using the Flash Programmer from the Command Line on page 16

[링크 : https://www.altera.com/en_US/pdfs/literature/ug/ug_nios2_flash_programmer.pdf]


New에서 BSP Template에서 생성으로 보니 존재는 하네

Memory Test Small은 Flash 부분이 빠진다.


그나저나 얘는 램에 올리나.. 찾아보니 이거 실행조차 안되면 램도 연결 제대로 안된거라네..

Using cable "USB-Blaster [USB-0]", device 1, instance 0x00

Resetting and pausing target processor: OK

Reading System ID at address 0x04012030: verified

Initializing CPU cache (if present)

OK


Downloading 02000000 ( 0%)

Downloading 02010000 (49%)

Downloading 020200A0 (94%)

Downloading 04008000 (99%)

Downloaded 129KB in 1.9s (67.8KB/s)


Verifying 02000000 ( 0%)

Verify failed between address 0x2000000 and 0x200FFFF

Leaving target processor paused


Downloading ELF Process failed 

[링크 : https://alteraforum.com/forum/showthread.php?t=53368]


My problem is resolved now, I just changed the clock source of the EPCS CONTROLLER. The clock was driven from the system clock using a CLOCK BRIDGE.

Now, the clock is driven from a PLL OUTPUT ( the system and the EPCS CONTROLLER clocks are now independent).

Thank you Daixiwen & dsl for helping me. 

[링크 : https://alteraforum.com/forum/showthread.php?t=49224&page=3]

'embeded > FPGA - ALTERA' 카테고리의 다른 글

Nios II 안된 이유가.. 설마..  (0) 2018.02.04
clock bridge  (0) 2018.02.03
Nios II EPCS 및 SDRAM  (0) 2018.02.03
altera speed grade  (0) 2018.02.03
Nios II 조금 감 잡은듯  (0) 2018.02.02
Posted by 구차니
Programming/Verilog2018. 2. 3. 11:43

QSYS 데모 프로젝트에 CPU.v 가 보여서 열어보려고 했더니 배째네


아무튼.. 해당경로에서 뒤져보니.. 음.. 일단 정체 불명의 바이너리로 보인다.


표준으로 제정되어 IP 보호를 위해 암호화를 지원하고

IEEE Std 1735-2014 (Incorporates IEEE Std 1735-2014/Cor 1-2015) - IEEE Recommended Practice for Encryption and Management of Electronic Design Intellectual Property (IP)

[링크 : https://standards.ieee.org/findstds/standard/1735-2014.html]

    [링크 : http://www.edaboard.com/thread276606.html]

[링크 : http://www.eda-twiki.org/twiki/pub/P10761/WorkingGroupDocuments/P1735_Overview_4spp.pdf]


요 근래에 보안이 깨진 듯 하다

일단 내부적으로는 AES 암호화를 사용하는 것으로 보이고 AES-CBC Mode라는걸 사용하나 보다

[링크 : http://news.grayhash.com/category/vulnerability/IEEE_P1735]


'Programming > Verilog' 카테고리의 다른 글

Verilog =, ==, ===  (0) 2018.04.10
Verilog HDL, paramter 와 module, 그리고 delay  (0) 2018.03.03
verilog module instantiate  (0) 2018.01.26
verliog module 선언  (0) 2018.01.25
verilog 모델링 유형  (0) 2018.01.20
Posted by 구차니
embeded/FPGA - ALTERA2018. 2. 3. 10:11

EPCS도 안되는데 SDRAM은 뺄까...

Platform Designer에서 경고가 뜨는데

epcs_flash_controller에 conduit을 연결해야 한다고 한다.


그런데 EPCS/EPCQx1 에 대해서 Conduit은 필수는 아니라고 하는데 다른건가?

[링크 : https://www.altera.com/en_US/pdfs/literature/ug/ug_nios2_flash_programmer.pdf]


DE0_Nano_QSYS_DEMO

DE0_Nano.v

Platform Designer랑 내용이 많이 다른 느낌인데...

어느정도는 자동생성하고 나서 손으로 한땀한땀(?) 연결시켜주는 기분?

DE0_Nano_SOPC DE0_Nano_SOPC_inst(

                      // the_epcs

                       .data0_to_the_epcs(EPCS_DATA0), 

                       .dclk_from_the_epcs(EPCS_DCLK), 

                       .sce_from_the_epcs(EPCS_NCSO), 

                       .sdo_from_the_epcs(EPCS_ASDO), 


                      // the_sdram

                       .zs_addr_from_the_sdram(DRAM_ADDR),

                       .zs_ba_from_the_sdram(DRAM_BA),

                       .zs_cas_n_from_the_sdram(DRAM_CAS_N),

                       .zs_cke_from_the_sdram(DRAM_CKE),

                       .zs_cs_n_from_the_sdram(DRAM_CS_N),

                       .zs_dq_to_and_from_the_sdram(DRAM_DQ),

                       .zs_dqm_from_the_sdram(DRAM_DQM),

                       .zs_ras_n_from_the_sdram(DRAM_RAS_N),

                       .zs_we_n_from_the_sdram(DRAM_WE_N),

                    ); 


DE0_Nano_SOPC.v

module DE0_Nano_SOPC (

output wire [12:0] zs_addr_from_the_sdram,               //                         sdram_wire.addr

output wire [1:0]  zs_ba_from_the_sdram,                 //                                   .ba

output wire        zs_cas_n_from_the_sdram,              //                                   .cas_n

output wire        zs_cke_from_the_sdram,                //                                   .cke

output wire        zs_cs_n_from_the_sdram,               //                                   .cs_n

inout  wire [15:0] zs_dq_to_and_from_the_sdram,          //                                   .dq

output wire [1:0]  zs_dqm_from_the_sdram,                //                                   .dqm

output wire        zs_ras_n_from_the_sdram,              //                                   .ras_n

output wire        zs_we_n_from_the_sdram,               //                                   .we_n

output wire        altpll_sys,                           //                         c0_out_clk.clk

output wire        altpll_sdram,                         //                      altpll_sys_c1.clk

output wire        altpll_io,                            //                         c2_out_clk.clk

output wire        altpll_sys_c3_out,                    //                      altpll_sys_c3.clk

output wire        altpll_adc,                           //                         c4_out_clk.clk

output wire        locked_from_the_altpll_sys,           //          altpll_sys_locked_conduit.export

output wire        phasedone_from_the_altpll_sys,        //       altpll_sys_phasedone_conduit.export

input  wire        in_port_to_the_g_sensor_int,          //   g_sensor_int_external_connection.export


output wire        dclk_from_the_epcs,                   //                      epcs_external.dclk

output wire        sce_from_the_epcs,                    //                                   .sce

output wire        sdo_from_the_epcs,                    //                                   .sdo

input  wire        data0_to_the_epcs,                    //                                   .data0

); 


DE0_Nano_SOPC_sdram sdram (

.clk            (altpll_sys),                                            //   clk.clk

.reset_n        (~rst_controller_002_reset_out_reset),                   // reset.reset_n

.az_addr        (sdram_s1_translator_avalon_anti_slave_0_address),       //    s1.address

.az_be_n        (~sdram_s1_translator_avalon_anti_slave_0_byteenable),   //      .byteenable_n

.az_cs          (sdram_s1_translator_avalon_anti_slave_0_chipselect),    //      .chipselect

.az_data        (sdram_s1_translator_avalon_anti_slave_0_writedata),     //      .writedata

.az_rd_n        (~sdram_s1_translator_avalon_anti_slave_0_read),         //      .read_n

.az_wr_n        (~sdram_s1_translator_avalon_anti_slave_0_write),        //      .write_n

.za_data        (sdram_s1_translator_avalon_anti_slave_0_readdata),      //      .readdata

.za_valid       (sdram_s1_translator_avalon_anti_slave_0_readdatavalid), //      .readdatavalid

.za_waitrequest (sdram_s1_translator_avalon_anti_slave_0_waitrequest),   //      .waitrequest

.zs_addr        (zs_addr_from_the_sdram),                                //  wire.export

.zs_ba          (zs_ba_from_the_sdram),                                  //      .export

.zs_cas_n       (zs_cas_n_from_the_sdram),                               //      .export

.zs_cke         (zs_cke_from_the_sdram),                                 //      .export

.zs_cs_n        (zs_cs_n_from_the_sdram),                                //      .export

.zs_dq          (zs_dq_to_and_from_the_sdram),                           //      .export

.zs_dqm         (zs_dqm_from_the_sdram),                                 //      .export

.zs_ras_n       (zs_ras_n_from_the_sdram),                               //      .export

.zs_we_n        (zs_we_n_from_the_sdram)                                 //      .export

);


DE0_Nano_SOPC_epcs epcs (

.clk           (clk_50),                                                           //               clk.clk

.reset_n       (~rst_controller_001_reset_out_reset),                              //             reset.reset_n

.address       (epcs_epcs_control_port_translator_avalon_anti_slave_0_address),    // epcs_control_port.address

.chipselect    (epcs_epcs_control_port_translator_avalon_anti_slave_0_chipselect), //                  .chipselect

.dataavailable (),                                                                 //                  .dataavailable

.endofpacket   (),                                                                 //                  .endofpacket

.read_n        (~epcs_epcs_control_port_translator_avalon_anti_slave_0_read),      //                  .read_n

.readdata      (epcs_epcs_control_port_translator_avalon_anti_slave_0_readdata),   //                  .readdata

.readyfordata  (),                                                                 //                  .readyfordata

.write_n       (~epcs_epcs_control_port_translator_avalon_anti_slave_0_write),     //                  .write_n

.writedata     (epcs_epcs_control_port_translator_avalon_anti_slave_0_writedata),  //                  .writedata

.irq           (irq_synchronizer_004_receiver_irq),                                //               irq.irq

.dclk          (dclk_from_the_epcs),                                               //          external.export

.sce           (sce_from_the_epcs),                                                //                  .export

.sdo           (sdo_from_the_epcs),                                                //                  .export

.data0         (data0_to_the_epcs)                                                 //                  .export

);


DE0_NANO_SDRAM_Nios_Test

altpll에서  한개를 분기해서 쓰는데 정작 altpll_sdram이라고 이름지어준 애는 안쓰냐 -ㅁ-?


기본값은 width 32/row 12/col 8인데

width 16/ row 13/col 9으로 해주면 32MB로 생성 되는 듯


이건.. 데이터시트 보고 씨름해야 하니 패스


sdram에는 클럭이 연결 되어야 하는구나..


일단 c0는 100MHz로 2배 뻥튀기 해서 제공된다.



---

내가 생성한 파일에는 export 부분에 변수가 연결이 없다.

unsaved_epcs_flash_controller_0 epcs_flash_controller_0 (

.clk        (clk_clk),                                                                //               clk.clk

.reset_n    (~rst_controller_reset_out_reset),                                        //             reset.reset_n

.reset_req  (rst_controller_reset_out_reset_req),                                     //                  .reset_req

.address    (mm_interconnect_0_epcs_flash_controller_0_epcs_control_port_address),    // epcs_control_port.address

.chipselect (mm_interconnect_0_epcs_flash_controller_0_epcs_control_port_chipselect), //                  .chipselect

.read_n     (~mm_interconnect_0_epcs_flash_controller_0_epcs_control_port_read),      //                  .read_n

.readdata   (mm_interconnect_0_epcs_flash_controller_0_epcs_control_port_readdata),   //                  .readdata

.write_n    (~mm_interconnect_0_epcs_flash_controller_0_epcs_control_port_write),     //                  .write_n

.writedata  (mm_interconnect_0_epcs_flash_controller_0_epcs_control_port_writedata),  //                  .writedata

.irq        (irq_mapper_receiver1_irq),                                               //               irq.irq

.dclk       (),                                                                       //          external.export

.sce        (),                                                                       //                  .export

.sdo        (),                                                                       //                  .export

.data0      ()                                                                        //                  .export

);

 


+

conduit 추가하니까

module unsaved (

input  wire       clk_clk,                          //                       clk.clk

output wire [7:0] pio_0_external_connection_export, // pio_0_external_connection.export

input  wire       reset_reset_n                     //                     reset.reset_n

); 

그와 연결된 핀들도 추가된다. 신기하네..

module unsaved (

input  wire        clk_clk,                          //                       clk.clk

output wire        epcs_dclk,                        //                      epcs.dclk

output wire        epcs_sce,                         //                          .sce

output wire        epcs_sdo,                         //                          .sdo

input  wire        epcs_data0,                       //                          .data0

output wire [7:0]  pio_0_external_connection_export, // pio_0_external_connection.export

input  wire        reset_reset_n,                    //                     reset.reset_n

output wire [12:0] sdram_addr,                       //                     sdram.addr

output wire [1:0]  sdram_ba,                         //                          .ba

output wire        sdram_cas_n,                      //                          .cas_n

output wire        sdram_cke,                        //                          .cke

output wire        sdram_cs_n,                       //                          .cs_n

inout  wire [31:0] sdram_dq,                         //                          .dq

output wire [3:0]  sdram_dqm,                        //                          .dqm

output wire        sdram_ras_n,                      //                          .ras_n

output wire        sdram_we_n                        //                          .we_n

);



+

SDRAM bit width와 row, column이 안 맞으면 요런에러가 뜬다

Error (13076): The node has multiple drivers due to the always-enabled I/O buffer 

[링크 : http://www.alteraforum.com/forum/showthread.php?t=19370]


ftp://ftp.altera.com/up/pub/Altera_Material/13.1/Tutorials/DE0-Nano/Using_DE0-Nano_Flash.pdf

'embeded > FPGA - ALTERA' 카테고리의 다른 글

clock bridge  (0) 2018.02.03
끄아아아아아 EPCS 안돼 ㅠㅠ  (4) 2018.02.03
altera speed grade  (0) 2018.02.03
Nios II 조금 감 잡은듯  (0) 2018.02.02
xilinx easypath / Altera hardcopy  (0) 2018.02.02
Posted by 구차니