你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

“突变的怪形”:FPGA + STM32

[复制链接]
eefishing 发布时间:2019-2-27 22:57
本帖最后由 eefishing 于 2019-2-27 23:00 编辑
2 [, V& a5 T4 w7 |5 G
) {. O( G$ t: w3 V0 m6 z* t描述
& q" u& U( w6 J' ~7 k- S+ U两个开发板合为为一个:第一个基于STM32的Arduino(“枫叶迷你”兼容)和第二个旋风II FPGA开发板,用来玩VHDL/Verilog。它还兼容“Multicomp”(“Multicomp”是一个模块化的VHDL设计,“运行”一些著名的复古8位CPU由Grant Searle),使选项“运行”容易VHDL SOC与Z80/6809/6502 CPU和I/O,包括高清(在SD)和彩色VDU。) }3 z, h. g: w- Q2 t# y: }
9 @6 R. y( ~! j4 V* u" ~. t! f

; x+ p% a; a% q+ w/ n  a0 _7 m
) Y/ c1 [" q; X4 K" I

0 }# f5 a& E! m

% T1 G9 S8 l3 }0 a! t% k7 l硬件概述0 w1 l6 v& J% v: V

2 w9 u7 l4 ^$ L' k+ X

4 A4 e0 l+ ?9 W- j3 J% V这就是CPLD趣味板的“自然”演变。这个想法是用廉价和容易找到的组件制作FPGA板,用STM32 Arduino作为FPGA的“刺激发生器”或“伴侣”处理器,用512KB的SRAM和通用I/O作为GPIOs, VGA和PS/2键盘来“运行”HDL SOCs。% P3 I7 U, H9 s

' D  M# @! `4 \1 e+ o" o更重要的是,它可以选择“运行”轻松地多comp VHDL SOCs具有所需的HW。
! e- d- ]8 n7 C( _5 y) v" E4 ?
5 P6 p' e! V. D+ Z9 h' v1 E. i) uMulticomp是一种模块化的VHDL设计,用于“运行”Grant Searle制造的一些著名的复古8位cpu。
! W9 G5 S- ], T0 \2 f
586511550851699908.jpg
5670431549027538700.jpg 8 k, B) x( I* r* v% M- R  [

, Q, S0 P; t" _9 y8 V
. ^- Q( v  ], ^6 _这里是PCB的细节。请注意,下图中的PCB具有ENIG表面光洁度。这不是绝对必需的。您可以使用最便宜的HASL表面处理:

/ b' `2 E% B- T) }8 c( c 5963461549100391570.jpg
6 k$ h, |, y0 e
9 w% y! v( a+ G: k  M
PCB留给选择焊接“遗留”的SD插座(如之前的图片)或微型SD插座,如下图所示:
& s9 y; s4 n8 s7 m% m% o! } 6173761550851579547.jpg 0 @8 m2 z& Q5 `5 O, z: z8 y& E
6904591549020142573.jpg 1 A9 d7 p2 o  t8 o$ \) Q! n

1 T/ F. E: |# W$ X0 ]

$ M, n' f) L% q% A; y' T+ b/ ?) ]2 I! l
STM32的ARDUINO$ H; x$ L. ^( {6 u6 L* l' \5 u

* y; P$ D" q# m) RSTM32F103C8T6单片机作为FPGA的“刺激发生器”或“伴侣”单片机,通过USB接口使用友好的Arduino IDE轻松编程。
4 t9 F4 f3 M" U
) f' B* [9 Y1 U" L+ kMCU保留了五个按钮(RST, BUT, USER1-USER3)和一个led (PB1)。
; Y$ n( n/ g2 r" c4 \
4 V- p$ l: r: H1 b还有一个专用的GPIO连接器(GPIO1)。# X+ Z/ k% o0 Z8 q( a1 _

; C1 R" [$ `; b* t4 k; GSTM32F103单片机的端是“Maple Mini”兼容的,所以可以使用http://www.stm32duino.com提供的STM32F103 Arduino core(更多信息请点击这里)。想了解关于Maple Mini和stm32duino的小故事,请点击这里。# b- w- }, y* f2 ^4 ~2 M7 n9 t/ M

- z8 D) s8 [" v; ]1 J您需要首先使用廉价的“St-Link V2”加密狗通过SWD连接器(或者在串行连接器上使用串行usb适配器)来闪存引导加载程序。
* F0 c: q" X! g8 ~+ @" j. L 7144291504254066818.jpg 5 C! ^' [: {& Q/ r
: d& C+ _% ?- k


- u- B; [% N  l' P& n- v! T/ q6 K: K* M0 s
THE CYCLONE II FPGA
, }( S! A/ B# y. q6 U$ T% H. W# n
; x8 L1 d6 @) V  Z6 v" Z2 n为了配置FPGA (EP2C5T144C8N),它使用Quartus II IDE (v13sp1免费版是支持Cyclone II FPGA的最后一个版本)和一个通过JTAG或作为连接器的廉价“USB Blaster”加密狗。
  q% Y! X8 z4 X& i; G+ x1 F: z5 [! e8 _& w( I' M& [3 [" _
要将FPGA配置永久存储到eeprom中,您可以使用AS连接器,也可以使用具有SFL IP核心的JTAG连接器,如本Intel视频中所述。7 }% B+ |' r& J2 f" G0 E! z0 k  S7 B
8717831504254158550.png
2 I' p- _  ^2 Q8 Q; D
8 g' W1 a# N# [FPGA保留4位7段led显示、4个按钮(USER4-USER7)和4个led (LED1-LED4,前3个为“user”led,最后一个为配置活动指示器)。9 d* m8 @9 v+ X2 p4 A
/ T! V  o7 `; i( Y4 \* R7 m
FPGA的一面也有DEV_CLRn按钮来清除所有内部FFs nCONFIG按钮强制配置重载(重启的FPGA),和一个DEV_OE开关强制所有的FPGA别针HiZ(使用DEV_CLRn按钮和DEV_OE开关必须使他们首先在第二第四的IDE)。
% u7 k0 V2 n- @2 S* k& v7 I. `! _: u, t* ]" x
还提供了机载50MHz振荡器,以及用于外部振荡器的连接器。) E) `5 s- Y8 T7 K: T, l
( g: G, g6 ~; E' h; K1 H$ ^
有13条I/O线“连接”STM32和FPGA,每条线上都有一个由两个连接器(TEST1和TEST2)组成的引脚。这样就可以很容易地用作用域或LA“观察”它们之间交换的信号。  l/ ?! u. A' \7 i" W+ W' S) E
- y+ ]% i! r) u6 E
在这13条I/O线路上,单片机端有各种外设(如串行、I2C、SPI)。
3 @8 b1 W) ]7 ]2 P
) N2 m8 p* ?- p: B- H) s在FPGA端(GPIO2连接器)还有其他22个GPIOs。注意,有些GPIO与VGA、PS/2和SD共享)。: w! C5 A5 c0 S9 R+ ^
也可以使用Arduino STM32“侧”或FPGA“侧”作为一个独立的开发板,TEST1-TEST2连接器作为普通GPIOs(在HiZ中持有另一个“侧”的插脚)。
( x+ c# v0 v( T! B
1 H! @2 ^3 f3 k- U9 q; N5 o0 a: L

' K9 W' w5 O  s- i7 W. C9 p5 |( L" z! ]5 q$ l0 ?! s
* *项目状态* *
4 P# P) u+ P* w1 a/ s$ |+ W' _
这里必须编写大量文档来解释如何使用它……' |1 Z) D, C! q/ W, A' z9 w$ X$ X- H

- U$ y0 h: V4 o& k" @# \2 C7 I我还准备了一些可以运行的“一些”Multicomp示例(包括SD图像)。我可能会用github。  \9 ?2 k7 K  Y: o# ~

3 G7 k, ?- L; X2 S0 ^如何得到一个PCB* *
( L4 s2 \; f. P; ]: H' O
, y7 }* W% e+ r& Y" a# i像往常一样,我准备了一个“简单”的链接来获得少量(最少5个)PCB。链接是这个。/ H, A' B. {9 r5 H: O
4 {* ], D& j9 T7 I. Q  |

5 m9 q& q- i9 R
+ i4 k/ X0 _! H6 w& G! K+ {) N
* *学分和执照* *
# K. P8 V# h+ \# y% b- y
+ g$ @# x2 F$ B: N$ H+ N* l* }4 t% \Multicomp VHDL是基于Grant Searle的原始工作,并以以下许可证发布:1 J0 j9 e& x+ Z% ^

6 a% L* s& m+ F6 q/ U, ~下载这些文件时,您必须同意以下内容:我们尊重ROM内容的原始版权所有者。使用任何文件的内容在自己的项目中自由是允许的,但任何出版的材料包含全部或部分的任何文件分发,或来源于我在这里所做的工作将包含确认回我自己,格兰特塞尔,回到这个页面的链接。任何发布或分发的包含本页所有或部分文件的文件必须免费提供。”(http://searle.hostei.com/grant/Multicomp/index.html)。6 x6 w' l, G& A% j/ w8 p

4 s% a1 m2 J4 G+ I所有的项目文件(SW和HW)都是在GPL v3下授权的。0 H' w2 U2 J# K; h. H  d

# j: w+ v- ?: z0 m; H如果您以任何方式使用本材料,请注明作者(本人),我们将不胜感激。4 R' I0 `& J$ f( p2 M6 _

6 a% Z  F2 |& B8 f0 C* {8 O' N6 i
* X8 T- u" _7 ?  a

; ^; g; ~; v; @/ \8 b* R原创:Just4Fun
( _7 a0 S; t1 H$ i3 y* L出处:http://hackaday.io/project/163683-the-thing-fpga-stm32/details
! G, B  q( u7 [7 S6 Z
. {. o/ p( O2 M) D9 [. @
8 k7 Q* D7 Y. X4 V8 Z) A6 J/ D. M! @4 B6 [( y! d

7 Q2 A& u4 R  P3 O9 }$ \- b% I: d3 S" ~" C! x$ x1 [% ^- y

: v: x* Y, M. z! C
收藏 评论1 发布时间:2019-2-27 22:57

举报

1个回答
Kevin_G 回答时间:2019-2-28 18:23:28
学习下

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版