ALTERA EP1C6嵌入MAC实现网络通信--分享
本帖最后由 brightsallyok 于 2014-5-5 17:29 编辑代码在2楼
一直比较喜欢搞嵌入式网络的东西,去年一个偶尔的机会接触了一些云终端的盒子,发现里面是ALTERA cyclone EP1C6Q240C8N的片子,自己就在网上买了一片PCB板,试着玩玩。慢慢的熟悉了一些基本的实验,就像向云终端那样嵌入MAC试试,记得坛子上有介绍云终端的盒子的方案是南棒子做的,因为EP1C6的资源有限,折腾了有一个月,最后搞定。期间各种痛苦、折磨、等待,支持我做到最后的是一句话,送给自己也送给大家:既然人家能搞定这个,咱们也应该能搞定!
1.硬件EP1C6Q240C8N+RTL8201BL(PHY)
2.开发环境Quartus II 8.0 (32-Bit)和Nios II8.0 IDE
3.嵌入的MAC采用IP核OpenCores 10/100 Ethernet MAC with Avalon Interface
4.cpu嵌入NIOS2 无MMU
5.测试软件ucos+NicheStack
代码在2楼
另有7块多余的有问题的PCB,谁想玩,免费送了
PCB有问题:1)PK3封装时引脚定义错,需要1,3脚焊接一起
2)PS2接口放反了,本来应该朝外,现在是朝向芯片那一边了
3)PM1001-6以太网变压器的引脚需要飞线
4)FLASH的WE信号未能连接到FPGA的127脚,需要自己飞线
本帖最后由 brightsallyok 于 2014-5-5 17:06 编辑
代码NIOS+MAC的quartus工程
协议栈资料
协议栈代码
MAC资料
Avalon OpenCores 10_100 Ethernet MAC IP核代码
测试需要的文件
1.硬件
2.软件
测试
1).在Nios II Command Shell.bat窗口中输入nios2-download -g simple_socket_server_0.elf
2).打开串口监视工具DNW 115200 8N1可以看到
Your Ethernet MAC address is 00:88:88:52:3b:95
Static IP Address is 192.168.1.234
3).在windows下运行里输入cmd
4).在cmd里输入 telnet 192.168.1.234 30
然后输入0,1,2或7观察灯的亮灭
楼主有没有千兆mac的资料啊? zxq6 发表于 2014-5-5 17:12
楼主有没有千兆mac的资料啊?
对不起,没有这方面的资料,我玩的比较低端,主频100M FPGA上面实现一个EMAC成本比买个外置EMAC芯片成本高多了,还可能有坑,特别是千兆的。 那板子我怎么看都像自动布线的。 aozima 发表于 2014-5-5 17:44
FPGA上面实现一个EMAC成本比买个外置EMAC芯片成本高多了,还可能有坑,特别是千兆的。 ...
那有推荐外置千兆mac的芯片吗?fpga控制的,最好控制方式简单些,谢谢! zxq6 发表于 2014-5-5 18:04
那有推荐外置千兆mac的芯片吗?fpga控制的,最好控制方式简单些,谢谢!
比如: AX88180
Non-PCI 千兆以太网
http://www.asix.com.tw/cs/products.php 这个还是要看看 本帖最后由 brightsallyok 于 2014-5-5 23:00 编辑
jxcylxh 发表于 2014-5-5 18:03
那板子我怎么看都像自动布线的。
不错,是自动布线,这个是用来验证我的猜想而画的一个板子,所以是自动布的线,基本功能验证差不多了
TXCLK引脚时可选的,通过跳线选择,TXCLK这个引脚很奇怪,不是每个引脚都可以做引脚锁定的
如果锁定在某些引脚上,会提示M4K不足 路过支持一下{:victory:} 请问LZ,用FPGA相比用通用的一些CPU,有哪些好处? mark{:handshake:} 综合时会出现"Error (272006): Cannot use value BYPASS of parameter CLOCK_ENABLE_INPUT_A with device family Cyclone in altsyncram megafunction"
cyclone的altsyncram的CLOCK_ENABLE_INPUT_A参数不能设为BYPASS?网上搜了个遍也没找到解决方法。 楼主牛人一个~~~~~~~~~~
页:
[1]