embeded/raspberry pi2018. 1. 11. 09:36

잘 쓰던 녀석인거 같았는데.. 오랫만에 신버전(?)을 받아서 설치하니 안되네..

찾아 보니 라즈베리 3 나오면서 블루투스가 ttyAMA0로 연결되고

ttyS0가 시리얼이 되었다는 말이 있으니 한번 확인해 봐야겠다.


[링크 : https://raspberrypi.stackexchange.com/.../how-do-i-make-serial-work-on-the-raspberry-pi3/45571#45571]

   [링크 : https://raspberrypi.stackexchange.com/.../error-serial-device-dev-ttyama0-does-not-exist]

[링크 : https://raspberrypi.stackexchange.com/.../raspberry-pi-3-uart-not-working]

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?t=172958]


ttyS0는 존재하지 않고 ttyAMA0가 있는데

아무튼.. raspi-config에서 설정해주니까 문제없이 되는 느낌?

[링크 : https://www.raspberrypi.org/documentation/configuration/uart.md]



+

2018.01.12

신기하네.. Offline이라고 뜨는데 통신이 된다 -ㅁ-


'embeded > raspberry pi' 카테고리의 다른 글

rpi config.txt avoid_safe_mode=1  (0) 2018.02.18
블투 동글이 비싸!  (0) 2018.02.17
piwall / yodeck  (0) 2017.11.08
rpi dual spi lcd  (0) 2017.11.08
GY-80 / GY-801  (0) 2017.10.09
Posted by 구차니
이론 관련/전기 전자2018. 1. 10. 20:53

포토 커플러랑 비슷한거 같긴한데 용어가 다를뿐인가?

아무튼 FPGA와 라즈베리 같은게 통신할때 전기적으로 충격을 먹을수 있으니

시리얼 라인에 opto-isolator나 저항을 달아 주라는데.. 흐음...

비싸 ㅠㅠ


[링크 : https://github.com/kramble/DE0-Nano-BitCoin-Miner/blob/master/FpgaminerOnPi.txt]

[링크 : https://forum.arduino.cc/index.php?topic=57125.0]

[링크 : https://softsolder.com/2010/01/13/arduino-serial-optical-isolator/]

[링크 : http://www.devicemart.co.kr/6301]

Posted by 구차니

fpga로 해보려던게 무산되서 좀 허망하긴 한데

(Cyclone IV로 구현된게 있고 18MH/s 정도 나온다는데, 

멀티코어 처럼 해보려고 했지만 남은 로직이 부족해서 불가능 ㅠㅠ)

이런저런 공부용으로는 좋아 보여서 일단 버리진 않고 있는중


라즈베리2와 de0-nano를 이용해서(시리얼로) 채굴을 해보려는데

채굴하려면 계좌가 필요하지 않나? 싶어서 찾다보니 비트코인 지갑이 그런 역활인 것 같고

bitcoin core라는 녀석을 깔아보니 무슨 블록 다 받아온다고 하루 내내 받아서 120GB정도 받아야

쓸 수 있도록 준비가 되는 것으로 보인다.

다르게 보면 전세계 모든 비트코인 거래 정보가 내 컴퓨터로 오는건가? 싶긴한데


이런 이유로 사람들이 온라인 지갑을 쓰는게 아닌가 생각된다.

bitcoin core는

PC만 가능하고, 온라인에서 사용불가

머.. 지갑 코드만 복사하면 다른데서 조회도 가능할지 모르겠지만 어떨지는 좀 더 찾아 봐야 할 듯.


아무튼 온라인 지갑에서 거래소와 환전소 역활을 하고

그 과정에서 이체 수수료로 이 생태계가 유지 가능할까? 라는 의문이 들긴 한다.


그리고 채굴은 여러가지 채굴 프로그램이 있지만

gpu 연동하는 cgminer가 가장 유명한거 같은데

fpga로 구현된게 cgminer랑 연동되서 되는진 모르겠고

cgminer 옵션중에 USB 타입의 ASCI-USB UART 식으로 구현된 녀석을 연동하거나 GPU 쓰는게

기본인것으로 보이지만.. fgpa는 특수 타입이니.. 존재할지 모르겠네?


라즈베리 꺼는 워낙 오래되서 지금 작동할지도 모르겠고

stratum 프록시 쓴다는데 링크도 보면 btcgulid라고 없어진 링크고..



---

온라인 비트코인 지갑

[링크 : https://steemit.com/kr/@maa/3yjimv]


cgminer를 이용해서 GPU 채굴하기

[링크 : https://toughnickel.com/personal-finance/How-to-Mine-Bitcoins-With-a-GPU-Using-CGMiner]


비트코인 코어(지갑 클라이언트) 설명

[링크 : http://thecoin.kr/lecture/1297]


cgminer는 아닌듯..  stratum PROXY server는 멀까...

[링크 : https://bitcointalk.org/index.php?topic=9047.940]

[링크 : https://github.com/kramble/DE0-Nano-BitCoin-Miner]


검색하다보니.. cgminer를 개조해서 4800bps에 돌아가게 했다 이런 느낌인데.. cgminer인건 맞는건가?

I cannot test it myself as my rig only runs at 4800 baud (AHEM, well I did hack the cgminer source to run at 4800, and it sort of worked, but required a change to the icarus detection algorithm to send the work packet twice as the first was ignored. This may be due to the use of a physical serial port on the raspberry pi rather than USB or may be a fault in my version of the fpgaminer code. Feedback would be appreciated as to whether the Mojo works with cgminer 3.1.1) 

[링크 : https://github.com/kramble/DE0-Nano-BitCoin-Miner/tree/master/Mojo_LX9]


얘가 cgminer 인가..? 1년 전에 업데이트가 일단 멈춤

[링크 : https://github.com/ckolivas/cgminer]


+

2018.01.11

[링크 : https://blog.naver.com/kang154123/221001176251]

[링크 : http://mtravel.tistory.com/94]


'이론 관련 > 암호화통화' 카테고리의 다른 글

블록체인 관련  (0) 2018.01.15
비트코인 단위 MH/s  (0) 2018.01.14
비트코인 프로토콜  (0) 2018.01.13
비트코인 구조 채굴 등  (0) 2018.01.12
비트코인 테스트 넷?  (0) 2018.01.11
Posted by 구차니
embeded/FPGA - ALTERA2018. 1. 10. 15:11

rpi2의 핀 아웃


DE0-nano의 핀아웃


DE0-Nano miner쪽 설정


라즈베리 8번 핀이 UART0-TX(회색) / 10번 핀이 UART0-RX(보라)

DE0-nano 2번 핀이 RX(회색), 4번 핀이 TX(보라)


1. Hashers22_serial 에서 qpf를 열어 합성하고 구으면 되고

2. serial_solo를 라즈베리에서 실행하면 되는 것 같은데

[링크 : https://github.com/kramble/DE0-Nano-BitCoin-Miner]


해봐야 알 듯..

그나저나 저거 하려고 비트코인 코어 설치하면 알아서(?) 통장을 생성하는거 같은데

이거 값을 이용하는건 또 어떻게 해야하나...


2018/01/10 - [embeded/FPGA] - DE0-Nano 핀헤더 관련

2017/03/25 - [embeded/raspberry pi] - 라즈베리 파이 포트 요약

2018/01/09 - [embeded/FPGA] - 심심해서(?) 비트코인 FPGA 빌드


+

목표로 하던 여러개의 인스턴스를 생성하여 2개나 3개 돌리는건 LE의 부족으로 무리인걸로 판명..

SHA256 부분을 최적화 해보는것도 방법일 거 같은데

이걸 하기에는 아직 실력 부족이고 -_ㅠ

Revision Name fpgaminer

Top-level Entity Name fpgaminer_top

Family Cyclone IV E

Device EP4CE22F17C6

Timing Models Final

Total logic elements 17,503 / 22,320 ( 78 % )

Total registers 11388

Total pins 19 / 154 ( 12 % )

Total virtual pins 0

Total memory bits 5,696 / 608,256 ( < 1 % )

Embedded Multiplier 9-bit elements 0 / 132 ( 0 % )

Total PLLs 1 / 4 ( 25 % )


채굴은 일단 무기한 연기...?


pc 클라이언트를 보니 단순하게  44바이트 보내고 160바이트 받는 구조인듯

[링크 : https://github.com/kramble/DE0-Nano-BitCoin-Miner/blob/master/serial_solo/mine.c#L716]

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

de0-nano-soc 와 de10-nano 비교  (0) 2018.01.16
아 몰라 fpga/bitcoin 포기  (0) 2018.01.12
DE0-Nano 핀헤더 관련  (0) 2018.01.10
심심해서(?) 비트코인 FPGA 빌드  (2) 2018.01.09
DE0-Nano와 이더넷 실드..  (0) 2018.01.04
Posted by 구차니
embeded/FPGA - ALTERA2018. 1. 10. 13:13

DE0_Nano_User_Manual.pdf 참조하여

FPGA GPIO랑 2.54 핀헤더랑 매핑된게 안보여서 일단 정리


+

de0-nano_pinout_rev1.0_180530.xlsx


de0-nano_pinout.xlsx



VSYS는 3.6~5.6V 사이

V3P3는 VSYS에서 LDO를 통해 3.3V를 생성한 녀석이다.


그러니까.. 

5V 쓸일 있으면 VSYS에

3.3V 쓸일 있으면 V3P3에 연결하면 된다.

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

아 몰라 fpga/bitcoin 포기  (0) 2018.01.12
de0-nano + rpi2 채굴?  (0) 2018.01.10
심심해서(?) 비트코인 FPGA 빌드  (2) 2018.01.09
DE0-Nano와 이더넷 실드..  (0) 2018.01.04
altera AS(Active Serial) / PS(Passive Serial) ?  (0) 2018.01.03
Posted by 구차니
embeded/arduino(genuino)2018. 1. 10. 10:47


D-SUN "USB to TTL" (Blue)

(Rx & Tx use 3.3V logic levels) 

D-SUN사 USB TTL은 (파란색 PCB)

TX가 3.3V로 뜨고

5V는 그냥 USB 전원을 뺴주는 것으로 보인다(전원 공급용?)


Gikfun YP-02 USB to TTL, CH340, 6-pin

(Rx & Tx use ~3.7V logic levels) 

YP-02는 wch의 ch340 칩셋을 사용하는데

점퍼를 이용해서 Tx의 전압을 3.3V나 5.0V로 선택이 가능하다.


[링크 : https://www.cpmspectrepi.uk/raspberry_pi/MoinMoinExport/USBtoTtlSerialAdapters.html]

Posted by 구차니
Programming/Verilog2018. 1. 9. 20:52

verilog 언어로 된 모듈을 여러개 어떻게 생성하나

일일이 이름 바꾸어서 해야 하나 고민을 했는데

동일 이름으로 생성도 가능하고

벡터로 모듈 생성이 가능하다고 한다

(그러니까 SHA256 모듈을 벡터로 생성하는 꽁수를!)


Example 4


module my_module (a, b, c);

input a, b;

output c;

  assign c = a & b ;

endmodule

 

module top (a, b, c) ;

input [3:0] a, b;

output [3:0] c;

  my_module inst [3:0] (a, b, c);

endmodule 

[링크 : http://verilog.renerta.com/mobile/source/vrg00027.htm]


genvar k;

generate for (k = 1; k <`wordsize - 1; k = k + 1)

 begin

    I2S_dff instance (.d(sd), .q(q_out[i]), .r(wsp), .en(dec_out[i]), .sck(clk));

    datareg_in = |q_out;

 end

endgenerate 

[링크 : https://electronics.stackexchange.com/.../how-to-use-generate-for-multiple-module-instantiation-in-verilog]


From Verilog-95 you can have a vector of instances:

d_flipflop ff[7:0] (A, Q, reset clk); 

[링크 : https://stackoverflow.com/questions/21615210/instantiating-multiple-modules-in-verilog]

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

베릴로그 순차적 구조적  (2) 2018.01.18
structural vs behavioral verilog  (0) 2018.01.12
verilog always  (0) 2018.01.01
verilog 2001 ** 연산자  (0) 2018.01.01
verilog 코드 분석  (0) 2018.01.01
Posted by 구차니

나름 ATC 자격증 까지 땄었는데

안쓰니 다 까먹는데 이녀석.. 마치 수능전후의 정석책 같은 녀석일세 -_-

그래도 다뤄본 적이 있다고 명령어들 보니까 대충 기억이 나는건 다행 ㅠㅠ


ROtate

[링크 : http://the52k.tistory.com/40]


MIrror

[링크 : http://the52k.tistory.com/48]


3d 명령

EXTrude 밀어내기

REVolve 돌리기

[링크 : http://kk8090.tistory.com/entry/오토캐드-3d-명령어-정리]


Chamfer 모따기

Fillet 둥글게

[링크 : http://the52k.tistory.com/25]


그러고보니 tr대신 f쓰는게 편하다고 배운기억이..

fillet을 0으로 해주고 어떻게 했던가? 기억이 가물가물..

[링크 : http://copyday.tistory.com/entry/왕-초보-캐드-배우기쉽다23b-오토캐드로-fillet-모깍기TRIM-NO-TRIM-모드]


align

도형을 정렬함(붙이기)

[링크 : http://help.autodesk.com/view/ACD/2016/KOR/?guid=GUID-D0FA10D5-76EE-4B80-A285-43C7F39916DB]

'프로그램 사용 > autocad' 카테고리의 다른 글

autocad web app 구동조건이 64bit 그리고?  (0) 2020.06.21
원 채우기  (0) 2018.05.01
autocad 명령어  (0) 2018.01.08
autolisp  (0) 2014.03.17
AutoCad 2011 도움말 - 명령어  (0) 2014.01.17
Posted by 구차니
회사일/케이스2018. 1. 9. 11:32

머.. 무슨 차이인지 모르겠다 ㅋㅋㅋㅋ



스폰지는 PU(폴리 우레탄)

노란색이나 부농부농 혹은 흰색(그러고 보니 왜 노란색을 많이 쓰지?)

[링크 : http://tip.daum.net/question/39257925]


하드 스폰지는 EVA는 아니고

말그대로 스폰지의 발포 밀도를 조절해서 좀 딱딱한 녀석?

[링크 : http://eponge.co.kr/bizdemo7193/04/01.php?com_board_basic=read_form&com_board_idx=19]


EVA는 에틸렌비닐아세테이트

아무튼 얘는 그 딱딱하고 대개 파란놈(파란게 싸서 많이 쓰나..?)

[링크 : http://tip.daum.net/question/90968265]


+

영보드 라는 건 상품명으로 발포 PE나 발포 EVA 계열로 생각된다.


영보드는 폴리에틸렌 및 EVA를 발포한 독립기포 또는 연속기포구조의 반경질 블록상의 제품으로 셀이 미세하고 균일하며 색상이 아름답고 다양한 제품입니다. 인쇄가 가능함으로 일용잡화, 완충용 포장재 및 스포츠용품 등으로 널리 사용됩니다.

[링크 : http://www.youngbo.com/pages/development/sub03_05_view07.asp]

'회사일 > 케이스' 카테고리의 다른 글

톰슨 커팅(도무송 재단)  (0) 2018.01.09
Posted by 구차니
embeded/FPGA - ALTERA2018. 1. 9. 10:03

소스를 다운 받고 압축을 풀고

[링크 : https://github.com/kramble/DE0-Nano-BitCoin-Miner]


de0-nano용이라고 하긴 했는데 다른 제품들도 추가된 듯

아무튼 EP4C 사용하니까 EP4CE10 폴더 가서 EP4CE10_miner.qpf 를 눌러 qurartus를 실행!


귀찮으니 그냥 합성 시작! 2분 50초에 완료!


메뉴의 Assignment - Assignment Editor가 있어서 눌러보니 Pin Planner 비슷하게 나오네?


먼가 많이 보여서 이름으로 정렬하니, 같은 핀에 대한 설정이 여러가지 였네..

Assignment - Pin Planner 를 실행하니.. 오히려 에디터보다 설정된 핀의 갯수가 줄었다?

아무튼 쓰는법은 나중에 좀 봐야 할 거 같고..


main_pll.v 에서 보니.. DE0-nano가 50MHz 클럭을 사용중이고

이걸 DIV/2 해서 쓰도록 설정 되어 있는 것으로 예상된다.(ALTPLL 아직 쓸줄 모름 ㅠㅠ)

defparam

// NB Uncomment BOTH divide, multiply and frequency settings according to osc speed

// Also change clock period in fpgaminer.sdc

// -------------------------------------------------------------------------------

// altpll_component.clk0_divide_by = 1, // 5 MHz osc

// altpll_component.clk0_divide_by = 1, // 10MHz osc

altpll_component.clk0_divide_by = 2, // 20MHz osc [IN USE]

altpll_component.clk0_duty_cycle = 50,

// altpll_component.clk0_multiply_by = `SPEED_MHZ * 2, // 5MHz osc

// altpll_component.clk0_multiply_by = `SPEED_MHZ, // 10MHz osc

altpll_component.clk0_multiply_by = `SPEED_MHZ, // 20MHz osc  [IN USE]

altpll_component.clk0_phase_shift = "0",

altpll_component.compensate_clock = "CLK0",

// NB inclk0_input_frequency is actually the clock PERIOD in picoseconds 

// altpll_component.inclk0_input_frequency = 200000, // 5 MHz osc

// altpll_component.inclk0_input_frequency = 100000, // 10 MHz osc

altpll_component.inclk0_input_frequency = 50000, // 20 MHz osc [IN USE]

altpll_component.intended_device_family = "Cyclone IV E", 


프로젝트 구성인데..

SHA256 계산하는데 거의 모든 능력치가 몰빵 되었네..

이 패널 보는 법을 좀 찾아 봐야겠네.. 로직셀이 여유가 있다면 이걸 여러개 생성해서

라즈베리 1대에 여러개의 시리얼 포트 구성하고 멀티코어(?)로 돌릴 수 있을 것 같으니..


git의 readme.txt 을 보면

아래꺼랑 내용을 합쳐보면.. 50Mhz / 디바이더(2) * SPEED_MHZ(14) 니까 350MHz로 작동하는건가?

으으으.. 공부할 게 넘쳐나네.. ㅠㅠ


문제는 1MHz당 10mA 전력 소비가 증가되고

40MHz로 돌린게 USB 전원으로 공급되는 500mA 제한 때문인지라 그 이상을 쓰려면

외부 전원을 공급 해주어야 한다. 그럼..3.5A * 5V = 17.5W 가 되는건가.. ㄷㄷ

(그러니까 잘 꽁수를 부려서 쿼드 코어를 구성해야... 40Mhz * 4 ㅋㅋㅋ)

그리고 80MHz 이상은 별도의 냉각이 필요하다고 한다.


처음 굽고 나서 켜면 halt 상태라 KEY0을 눌러서 켜줘야 한다고 한다. KEY1은 다시 죽임.

(근데 핀 플래너에 KEY0,KEY1에 대한 할당이 없었는데?


The PLL clock speed is set by the parameter (Verilog macro) SPEED_MHZ in units of 10MHz,

eg SPEED_MHZ=4 runs at 40MHz, which is the default setting. This gives 6.67MHash/s

throughput. This is the fastest that I recommend running an unmodified DE0-Nano. You may

clock faster at your own risk, but you should monitor the temperature of the the onboard

regulator chips as these will get VERY hot unless additional cooling is applied (eg fan

blown air). The fpga chip may also need cooling. BEWARE, you risk destroying your board

due to overheating if you increase SPEED_MHZ, and the actual speed in MHz is 10 times the

value set for SPEED_MHZ.


Current draw is approx 10mA per MHz (eg 40MHz will draw approx 400mA). Beware that a

typical USB port may only be able to supply 500mA so a 5.0 Volt external power supply

connected to the DE0-Nano white PSU header (JP4) is advised if overclocking. I have not

myself run this configuration any faster than 80MHz (SPEED_MHZ=8), and fan cooling was

essential.


After programming, the miner starts up in a halted state (it does NOT mine in this state)

Pressing the KEY0 pushbutton on the DE0-Nano board will start the miner (and reset the

nonce). Pressing KEY1 will halt it. This allows some control of power and thermal

management as the halted state draws considerably less current from the power supply.

This was of importance when extreme overclocking was applied to the Hashers22_serial

version as follows. 


SPEED_MHZ가 값으로 주어진다는데 한참을 찾았네 -_-

파일로 검색하니 qsf 확장자에서 설정되어 있어서, 프로젝트 설정을 찾아 보니

Compiler Setting의 Verilog HDL input에

Existing Verilog HDL macro settings:에 존재한다.


[링크 : https://www.rs-online.com/designspark/bitcoin-mining-with-a-raspberry-pi-and-de0-nano]

2017/12/29 - [embeded/FPGA] - de0-nano + rpi = 채굴머신..



+

DE2-115와 같은 패밀리의 DE-Nano는 생각외로 저조하네..

어떤 설정인지 모르겠으나.. 머 Cyclone IV가 그리 고성능은 아니니까..


[링크 : https://en.bitcoin.it/wiki/Mining_hardware_comparison]

    [링크 : http://bitpeople.kr/bbs/board.php?bo_table=Mining&wr_id=6]


DE2-115도 클럭 이빠이~ 끌어 올려서 80MH/s 도달한거 같은데

40Mhz로 작동하면 16.78MH/s 라고 하니 200MHz로 작동시킨 듯?

(그러니까 쿼드로 작동시키고 라즈베리에 시리얼 여러개 달고 전원 뻥튀기 하면...)

You will then be prompted to select a SOF to program, best to start with DE0_Nano_serial-40MHz.sof

Programming should only take a second or two. The blinkenlights demo should now change to a simple binary

count. This is the top byte of the nonce and gives a good indication of the hash speed (its 2^32 divided

by the time in seconds for a complete cycle, or roughly one increment per second translates to 16.78MH/s). 


GTX1050이 동났던걸로 기억하면 GTX1080이 AntMiner의 절반에 근접한다고 해도

여러가지 면에서 GPU 채굴의 효율이 높지는 않은데..

AntMiner가 1000W 이상을 쳐먹쳐먹 하는 입장에서 보면.. 무시무시 하네..

[링크 : http://jse.or.kr/AJMAHS/papers/v7n5/76.pdf]


다만.. 단순 산술로 해보면

GTX1080 기준 160W max 정도 소비하고

[링크 : http://www.hwbattle.com/chart/chart_vgapw.php]


12.5TH(=12500 GH)를 1200W에 처리하는 AntMiner S9를 기준으로 계산해보면

7.5개 분량의 전력을 소비하고

GTX1080이 4500MH니까 4.5GH/s 이고 7개 하면 31.5GH/s

403배 ASIC 쪽이 우월한 성능을 낸다.. ㄷㄷ

[링크 : https://shop.bitmain.com/specifications.htm?name=antminer_s9_asic_bitcoin_miner]

[링크 : https://shop.bitmain.com/productDetail.htm?pid=0002018010817075487815N912ME05E5]


아무튼... 내가 가진 염가형 FPGA로는 GTX 700 시리즈에는 비벼볼만 하나

GTX 900 시리즈에 발리기 시작하고, 소비전력 대비로든 딱히 ASIC이 나온 시점에서는 장점이 없다.

물론.. 돈 버는게 목적이 아니라 시스템 구축하고 Verilog 공부하는 목적으로는 해볼만 할거 같은데

한번.. 돌려는 봐야겠다



목표는..

로직이 허용하는 한도 내에서 최대한의 모듈을 생성하고 RX를 할당해서 멀티 코어 구성하고

라즈베리에서 USB 시리얼등을 이용해서 다 채널로 구성해서 돌려보는 걸로...?



+

코드를 보는데..

EP4CE22F17C6 가 DE0-Nano 껀데.. 이걸로 설정된 녀석이

Hashers22

Hashers22_serial

Makomk_Hashers_32_Serial

이 세녀석이다. 다시 봐야하나?


+

2018.01.10

Hashers22_serial 이 폴더에 있는 소스가 DE0-Nano에 가장 적절한 녀석으로 보인다.

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

de0-nano + rpi2 채굴?  (0) 2018.01.10
DE0-Nano 핀헤더 관련  (0) 2018.01.10
DE0-Nano와 이더넷 실드..  (0) 2018.01.04
altera AS(Active Serial) / PS(Passive Serial) ?  (0) 2018.01.03
fpga를 이용한 VGA(D-SUB 15pin) 출력  (0) 2018.01.03
Posted by 구차니