embeded/FPGA - ALTERA2017. 12. 14. 13:44

ASSP랑 ASIC를 비교하는데

무슨 차이인지 모호하다.. 그냥 단독 기능용 칩이라고 하면 되려나?

USB 인터페이스 칩을 ASSP로 보는데

그렇게 따지면.. ASSP는 ASIC에 포함되고

범용화된 사용 단일 기능 칩들은 모두 ASSP가 되는 듯..


Application-specific standard product

[링크 : https://en.wikipedia.org/wiki/Application-specific_standard_product]


ASSPs

Application-specific standard parts (ASSPs) are designed and implemented in exactly the same way as ASICs. This is not surprising, because they are essentially the same thing. The only difference is that an ASSP is a more general-purpose device that is intended for use by multiple system design houses. For example, a standalone USB interface chip would be classed as an ASSP. 

[링크 : https://www.eetimes.com/author.asp?doc_id=1322856]

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

altera quartus 라이센스 관련  (0) 2017.12.19
망할 지름신님...  (0) 2017.12.14
FPGA IP?  (0) 2017.12.11
fpga bitstream format?  (0) 2017.12.08
FPGA 개론?  (0) 2017.12.07
Posted by 구차니
embeded/FPGA - ALTERA2017. 12. 11. 20:14

FPGA 문서들을 보다 보니 IP가 어쩌구 나오는데

Internet Protocol의 그 IP가 아닌거 같아서 찾아 보니


IP Core라고 하기도 하고 IP라고도 하는데 일단 약자 자체는

지적자산(Intellectual Property)


ip  core

[링크 : http://whatis.techtarget.com/definition/IP-core-intellectual-property-core]

[링크 : https://wiki.kldp.org/HOWTO/html/CPU-Design-HOWTO/ip.html]

[링크 : https://www.intel.co.kr/content/www/kr/ko/fpga/ip-and-design-tools.html]

[링크 : https://www.altera.com/support/support-resources/support-centers/ethernet-support.html]

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

망할 지름신님...  (0) 2017.12.14
ASSP - Application-specific standard product  (0) 2017.12.14
fpga bitstream format?  (0) 2017.12.08
FPGA 개론?  (0) 2017.12.07
제조사별 FPGA 로직 게이트 갯수 차이  (0) 2017.12.06
Posted by 구차니
embeded/Cortex-M3 STM2017. 12. 11. 17:57

검색하다 보니 같은 블로그네..

아무튼 STM32에 DMA로는 SPI 정도만 가속하는 정도일려나?


[링크 : https://javakys.wordpress.com/.../stm32f2xx-또는-stm32f4xx에서-spi-dma를-통해-full-duplex-통신-구현하기/]

[링크 : https://javakys.wordpress..../nucleo-stm32f401re에서-spi-dma를-이용해서-w5500-송수신-성능-개선하기/]

[링크 : http://blog.naver.com/gauya/220215460198]


+

lm3s1607도 찾아 보았는데.. UART와 SPI에 대해서만 존재하는 걸로 보인다.

[링크 : http://www.ti.com/lit/ds/symlink/lm3s1607.pdf]


+

DMA는 들어봤지만 직접 구현해본적은 없다 보니 찾아 봐야할 듯..

특정 회로 라인에 물리는게 아닌건가..?

'embeded > Cortex-M3 STM' 카테고리의 다른 글

STM32F103 관련 용어  (0) 2021.02.02
CMSIS for stm32  (0) 2018.02.12
cmsis printf  (0) 2017.01.10
stm32 cortex-m3 api / library  (0) 2015.01.17
stm32f103z ?  (0) 2015.01.10
Posted by 구차니
embeded/Cortex-M3 Ti2017. 12. 11. 16:26

음.. 두개 섹션으로 된 녀석은 아직 발견 못함..

아무튼 이걸 이용해서 부트로더와 프로그램을 합칠 수 있을 거 같은데..

sct는 scatter의 약자라는데.. 왜 이런 용어를...


[링크 : http://www.keil.com/support/man/docs/armlink/armlink_pge1362075656353.htm]

'embeded > Cortex-M3 Ti' 카테고리의 다른 글

cortex m3 어셈블리 bl, cbz  (0) 2018.01.04
cortex-m3 keil 부트로더  (0) 2017.12.21
lm3s 부트로더  (0) 2017.11.21
JTAG / SWD 핀 연결방법 조사..  (0) 2017.04.04
어? 의외로 RX busy는 없네?  (0) 2017.03.27
Posted by 구차니
embeded/FPGA - XILINX2017. 12. 10. 15:39

de0 nano에서 고민중 ㅜㅜ

일단 가장 큰 차이는

DE0-nano는 FPGA만 딸랑있고 LAN이나 USB나 이런거 하나도 없다보니

회로 구성을 해야하니 이래저래 부담인데..


Features:

  • Xilinx Artix-35T FPGA:
    • 33,280 logic cells in 5200 slices (each slice contains four 6-input LUTs and 8 flip-flops);
    • 1,800 Kbits of fast block RAM;
    • Five clock management tiles, each with a phase-locked loop (PLL);
    • 90 DSP slices;
    • Internal clock speeds exceeding 450MHz;
    • On-chip analog-to-digital converter (XADC).
    • Programmable over JTAG and Quad-SPI Flash
  • System Features:
    • 256MB DDR3L with a 16-bit bus @ 667MHz
    • 16MB Quad-SPI Flash
    • USB-JTAG Programming circuitry (USB Micro cable required, NOT INCLUDED). 
    • Powered from USB or any 7V-15V source
  • System Connectivity:
    • 10/100 Mbps Ethernet
    • USB-UART Bridge
  • Interaction and Sensory Devices
    • 4 Switches
    • 4 Buttons
    • 1 Reset Button
    • 4 LEDs
    • 4 RGB LEDs
  • Expansion Connectors:

[링크 : http://store.digilentinc.com/arty-a7-artix-7-fpga-development-board-for-makers-and-hobbyists/]

[링크 : http://www.devicemart.co.kr/1358485] 26만 ㄷㄷㄷ




일단은.. 아래 링크는 먼저 찾은

FPGA에 부트로더와 리눅스 이미지를 합쳐서 굽는 법

그러니까.. Configuration Memory에 가티 올려진다는 의미구만?


Digilent Arty board and Linux - Part 5 - Storing FPGA, Linux and Bootloader into the QSPI Flash

[링크 : http://rdepablos.merlitec.com/Storing-system-into-the-QSPI-Flash]


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

xilinx bitstram ecryption  (0) 2018.01.23
xilinx artix-7 프로젝트 빌드해봄  (0) 2018.01.07
xilinx vivado / ISE 라이센스 관련  (0) 2017.12.19
xilinx Bitstram Length와 Logic cell  (0) 2017.12.08
reVISION / zynq 웨비나  (0) 2017.11.09
Posted by 구차니
embeded/FPGA - ALTERA2017. 12. 8. 22:45

configuration flash memory에 저장되는 데이터는 어떤 포맷인가 검색을 해봤는데

LSB 로 저장된다 정도만 알았을 뿐이지 어떤 식으로 구현이 적용되는지

포맷 자체가 어떤지는 알 수가 없네...


MCU의 파일이야 ELF 포맷이라던가 그런식으로 존재하는데..

얘는 로직셀에 직접 쓰여지고 적용되는 거니..

당연(?)할지 모르겠지만 altera나 xilinx의 제품간의 바이너리가 호환될리는...

당연히 없을려나?


그나저나 이녀석.. 쓰는건 드럽게 느리고

켜지는건 드럽게 빠른데 도대체 이유를 모르겠네..


BIT Swapping in PROM Files
The PROM Formatter produces a PROM file in which the bits within a byte are swapped compared to the bits in the input BIT file. Bit swapping (also called bit mirroring) reverses the bits within each byte.
Image
In a bitstream contained in a BIT file, the Least Significant Bit (LSB) is always on the left side of a byte. But when a PROM programmer or a microprocessor reads a data byte, it identifies the LSB on the right side of the byte. In order for the PROM programmer or microprocessor to read the bitstream correctly, the bits in each byte must first be swapped so they are read in the correct order.

The bits are automatically swapped for all of the PROM formats: MCS, EXO, BIN and TEK. For a HEX file output, bit swapping is on by default, but it can be turned off by deselecting a Swap Bits option. 

[링크 : https://www.xilinx.com/itp/xilinx10/isehelp/pim_r_promformatter_files.htm]


Bob Stein
February 22nd, 2014, 12:02 PM

Found the answer (http://quartushelp.altera.com/current/mergedProjects/reference/glossary/def_rbf.htm). It is LSB first. 

[링크 : https://alteraforum.com/forum/archive/index.php/t-36022.html]

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

ASSP - Application-specific standard product  (0) 2017.12.14
FPGA IP?  (0) 2017.12.11
FPGA 개론?  (0) 2017.12.07
제조사별 FPGA 로직 게이트 갯수 차이  (0) 2017.12.06
altera fpga 라인업  (0) 2017.12.06
Posted by 구차니
embeded/FPGA - XILINX2017. 12. 8. 22:30


KU025/KU035/KU040은 Configuration Flash Memory가 128Mb로 동일하다(16MB)

[링크 : https://www.xilinx.com/.../ug570-ultrascale-configuration.pdf]


하지만 로직 셀의 갯수는 318/444/530 으로 점점 커지는데..

편의상 세개를 하나의 패밀리로 동일 용량을 쓰도록 정책적으로 하는 걸려나?

아무튼.. 128,055,264 bit 는 16006908 Byte 이고 15631KB이고 15.26MB 이다.

16MB는 134,217,728bit

가장 많은 KU040을 기준으로 보면 530K 로직셀이고

128,055,264 / 530,000를 하면 241.6 bit 가 평균으로 나온다.

로직셀 하나당 약 30Byte의 설정이 필요한건가?

[링크 : https://www.xilinx.com/.../ultrascale-fpga-product-selection-guide.pdf]


vertex-5 시리즈를 먼저 찾았는데 계산하기가 용이하지 않아서 일단 패스~

[링크 : http://web.cecs.pdx.edu/~greenwd/fprog.pdf]

[링크 : https://www.xilinx.com/support/documentation/data_sheets/ds100.pdf]

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

xilinx bitstram ecryption  (0) 2018.01.23
xilinx artix-7 프로젝트 빌드해봄  (0) 2018.01.07
xilinx vivado / ISE 라이센스 관련  (0) 2017.12.19
digilent Arty A7  (0) 2017.12.10
reVISION / zynq 웨비나  (0) 2017.11.09
Posted by 구차니
embeded/FPGA - ALTERA2017. 12. 7. 18:15

읽어볼만한 내용인것 같아서 링크!

[링크 : http://fpga.tistory.com/28]

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

FPGA IP?  (0) 2017.12.11
fpga bitstream format?  (0) 2017.12.08
제조사별 FPGA 로직 게이트 갯수 차이  (0) 2017.12.06
altera fpga 라인업  (0) 2017.12.06
de0-nano / nios2  (0) 2017.12.06
Posted by 구차니
embeded/ARM2017. 12. 6. 23:33

느낌으로는.. target으로 여러개 만들어서 프로젝트에 -D 옵션 줘서 준비해놓고

batch build 해야 할 느낌..

그게 아니라면 직접 armcc 를 이용해서 커맨드 라인에서 빌드하고(proj 파일 도움없이)

결과를 내야 할 느낌..


[링크 : http://www.keil.com/support/man/docs/uv4/uv4_dg_adscc.htm]

[링크 : http://www.keil.com/support/docs/868.htm]

[링크 : http://www.keil.com/support/man/docs/uv4/uv4_commandline.htm]

[링크 : http://www.keil.com/support/man/docs/uv4/uv4_dg_batchbuild.htm]

    [링크 : http://www.keil.com/support/man/docs/uv4/uv4_ca_batchbuildmultiprojectfile.htm]


[링크 : http://www.keil.com/support/man/docs/armcc/armcc_chr1359124194749.htm] armcc 옵션

[링크 : http://www.keil.com/support/man/docs/armcc/armcc_chr1359124909314.htm] -D 옵션

'embeded > ARM' 카테고리의 다른 글

ARM MPMC(multiport memory controller)  (0) 2018.03.19
AMBA AXI  (0) 2018.01.30
카드크기 컴퓨터 벤치마크  (0) 2016.09.04
JTAG ETM  (0) 2016.09.02
j-link segger j-flash  (0) 2016.09.02
Posted by 구차니
embeded/FPGA - ALTERA2017. 12. 6. 15:33

아키텍쳐가 다른 것에 대한 비교는 무의미 하지만

그래도 굳이 하자면..

xilinx는 6 input 이고 altera는 4 input 이라

1.3배 정도 쳐주면 된다 라는 결론?


adaptive logic module (ALM)

logic elements (LEs)

[링크 : https://www.altera.com/en_US/pdfs/literature/wp/wp-01003.pdf]

LUT, Logic Cell and Logic Element are all the same to me: the most basic FPGA general logic primitive. Xilinx use LUT, Altera LE, microsemi/lattice possibly something else.

The problem is, they are not the same. In their most recent architecture, Xilinx use 6-input LUT and altera 4-input LUT. They are aggregated in logic blocks which has other features like fast-carry chain, registers and distributed memory.

Converting to system gates is useful, but don't forget it's also a marketing war. A Xilinx FPGA should fit 1.5 times the logic of an Altera FPGA, since it's LUT have 6 instead of 4, right? Well, it largely depends on the design, if the design can't use 6-inputs much, the unused ones are wasted. Same with fast-carry logic, I don't know if they count that in equivalent gate number, but be advised that number is inflated.

System gates is a common measure of ASIC design complexity. The same design on two different foundries should have similar system gates number, as waste is not really an issue for ASIC.

If you're looking for an FPGA. I suggest you choose your vendor, port enough of your design to get an idea of how big a FPGA you need and choose a FPGA with an upgrade path (if you want to market). If it's for a single prototype, just use the biggest FPGA you can afford. 

[링크 : https://stackoverflow.com/.../relation-between-luts-logic-cell-logic-elements-system-gates]


[링크 : http://ee.sharif.edu/~asic/Docs/fpga-logic-cells_V4_V5.pdf]



Cyclone IV 에는 LEs(Logic Elements)가

Logic array blocks (LABs) contain groups of LEs. 

Each LAB consists of the following features: 

■ 16 LEs

[링크 : https://www.altera.com/en_US/pdfs/literature/hb/cyclone-iv/cyiv-51002.pdf]


Cyclone V 에는 ALM이 언급되는데 LEs는 PCIe 관련으로 몇개의 LE가 사용된다 정도의 언급만 있다.

High-performance FPGA fabric Enhanced 8-input ALM with four registers 


The PCIe endpoint support includes multifunction support for up to eight functions, as shown in the following figure. The integrated multifunction support reduces the FPGA logic requirements by up to 20,000 LEs for PCIe designs that require multiple peripherals. 

[링크 : https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/cyclone-v/cv_51001.pdf]


근데.. LEs와 ALM을 동시에 표기한게 보이네.. 도대체 ALM과 LE의 연관이 어떻게 되는거야..

[링크 : https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/cyclone-v/cv_51001.pdf]


위에꺼랑 연관지어서 보면.. 25000 LEs = 9434 ALM 이고

평균적으로(?) 2.6LEs = 1 ALM 이 되는 건가?


음.. 아무튼 ALE와 LEs의 연관은 모르겠으나.. 

결론은 성능과 비용 사이에서 적절한 LUT4를 택했다 인가?

Designing the ALM The ALM is radically different from any other FPGA logic block, offering a number of major innovations. Getting from a classic 4-LUT with a single register block (with associated carry logic) to the ALM required a detailed understanding of customer requirements and a large investment in researching the tradeoffs of various architectures. Our pursuit for a larger LUT was inspired by research results indicating that a basic 6-LUT could yield a 14% performance improvement by reducing the number of levels of logic elements on the critical paths of circuits. Unfortunately, this performance increase also had a large area penalty, a 17% area increase resulting from a larger LUT-mask and more inputs for the LUT. Figure 4 illustrates the tradeoff between cost and delay for different sizes of LUTs. The basic approach in designing the ALM was to investigate building a larger LUT to reduce levels of logic and increase performance, but to also avoid the area increase by efficiently dividing the larger LUT into smaller LUTs when appropriate, as illustrated by the dashed line. The ability to divide a LUT is what makes it “adaptive.”  

[링크 : https://www.altera.com/en_US/pdfs/literature/wp/wp-01003.pdf]

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

fpga bitstream format?  (0) 2017.12.08
FPGA 개론?  (0) 2017.12.07
altera fpga 라인업  (0) 2017.12.06
de0-nano / nios2  (0) 2017.12.06
microblaze (xilinx) Nios II (altera)  (0) 2017.12.05
Posted by 구차니