eddsos的个人空间 http://blog.w73uwd.com/6282 [收藏] [复制] [RSS]

日志

IOT SOC设计 概述 1

热度 12已有 1378 次阅读2020-4-27 00:21 |系统分类:芯片设计| 随笔

忽然想自己设计一个IOTMCU,参照STM32 F1系列做一个性能差不多的SOC。当然并不是指自己要重写所有的代码,但至少所有的代码都应该是合法可用的。

首先是cpu的设计。现在有很多开源的CPU,可以合法的商用。所以完全没有必要自己从头写一个,并且考虑到整个的工具链的开发和维护,全部从头自己设计也不太现实。没有什么悬念,我打算选用目前很火的risc-v架构的CPU.

经过比较,我打算用OpenHWGroup的CV32E40P这个CPU.

由于还有工作,并且会有加班,所以并不会给自己制定严格的计划。之所以写出来,就是希望借此能让自己坚持下去。

有时自己并不会按照顺序去做,比如在研究MCU的时候,可能已经开始在写一些外设的设计,完全看自己的心情。多线程往下走,但不会超过3个。

设计用: System verilog.

验证用: UVM/C

模拟部分:用电路图,先用system verilog设计一个可综合的行为级模型。

工具:这个可能是唯一没有办法合法使用的。只能搞些破解软件用。

不过尽量用试用版的Vivado以及自带的modelsim吧。

国丰彩票操作系统:Centos7

 

第一个目标:把CV32E40P这个设计当作IP,做IP验收。研究并reproduce all synthesis/simulation result.

  1. 下载OpenHWGroup的riscv_vm的虚拟机  --done (Archive done 2020-04-27)

    -> I downloaded riscv_tools/riscv_gnu_toolchAI国丰彩票n and compiled successfully. But I didn't want to use them. Because it is very tedious and takes a lot of time. I am not software guy, so just use result from others.

    -> .ova from OpenHwGroup is stored in Google, which can't be accessed in China. I use Chrome/Development mode to access .ova;Then use multcloud to transfer data image from google drive to One Drive; Install One Drive and sync files to local.

    给OpenHWGroup发邮件说中国访问不了Google Drive。问如果我把VM虚拟机放Baidu网盘共享是否可以,一直没有回复。

  2. 研究RISC-V指令集,CV32E40P使用手册,验证环境手册。  -- On Going.

    -> Study RISC-V 指令集,自己做一个CPU并验证,FPGA运行LED Blinking程序  --On going

          1) download IBEX core and study document.  --done.

          2) IBEX FPGA synthesis                                  --done

                 Xilinx的很快就可以搞定,Altera的需要更改代码。

          3)   IBEX Simulation Start up                              --done 2020-05-03

                 利用verilator复现了simple_example的仿真结果。

                研究一个IP一般需要重现它的仿真环境,但是我手头没有VCS,并且从来没有用过FuseSoc和Verilator。考虑到

                以前破解VCS的痛苦经历,觉得还是用免费的的Verilator复现IP的仿真结果,然后逐步转移到自己习惯的仿真器。

                安装FuseSoc的过程中,总是出现各种莫名奇妙的错误,今天中午莫名其妙装上了,估计是网络的问题。

国丰彩票                  编译C程序的时候,也出现了问题,后来通过下载lowrisc prebuild gcc解决掉了。

                 刚看到这个帖子,不错。

                 http://blog.w73uwd.com/blog-1762300-6944788.html

                 这个帖子不全。针对Ubuntu 18.04, vcs2016, 安装后运行出如下问题:

                 运行 vcs 出现 bin/sh: Illegal option -h 如下解决 sudo rm -f /bin/sh 然后 sudo ln -s /bin/bash /bin/sh

                 现在 vcs 可用。 请参考:

               

                国丰彩票http://bbs.w73uwd.com/thread-839371-1-1.html

  

 

             4)研究FuseSoC文档,搞明白IBEX中FuseSOC命令的含义。--done 2020-05-12

             5)  Reproduce RISCV Compliance Simulation. --done 2020-05-12

                  里面有几个命令regression没有过,需要调试一下. --done 2020-05-20

                  It is proved that this is an RISCV Compliance testissue. Please reference

                  

              6) 研究google的验证平台,重现仿真结果   --done 2020-05-25

                   尽管我极力避免,最后还是陷入了各种无休止的EDA工具错误中。浪费了很多时间后,只好静下心来,重新整理EDA工具。

                   以前自己用AS5,但是查看备份,很多工具版本都已经很老了,自己用可以,但没有办法复现别人的仿真结果。所以选用

                   红帽子操作系统Centos7,把各个EDA工具和工程重新搞一遍。今晚终于重现了一个google riscv dv的测试用例。

         3.  综合目标:

                1)优化代码,用Xilinx 的FPGA XCKU115, 频率至少应该到100MHz.   --done 2020-05-26

                     IBEX的设计优化的不错,很轻松就跑到了100多MHz.

         4. CPU的验证:

             CPU的验证比较特殊,我以前也没有搞过。先查些资料看看。

             这些会放到单独的日记中描述。总之就是验证,验证,再验证。  --on going。

      -> CV32E40P FPGA(Quartus) /asic(SMIC .18) 综合 --On going.

第二个目标:写一个兼容STM32F1的UART IP

  1.  研究STM32F1的器件手册,并参考其它厂家的器件,确认UART IP的Feature.  --On Going.

全部作者的其他最新日志

发表评论 评论 (3 个评论)

回复 lxing_1988 2020-4-27 11:23
加我QQ:920681130,我也在做和你类似的事情,纯属个人爱好,我做过几个STM32的外设(USART,SPI, QSPI,GPIO等) 也在用这个RISC-V core搭系统,目前已经能在FPGA板上跑起来了
回复 eddsos 2020-4-28 00:28
纯属消磨时间,近来由于疫情原因,老外工作进度比较慢。所以感觉有些闲。业余时间写些东西消磨时间。随时可能中断啊。
回复 fuxiufeng 2020-6-3 16:50
不错

facelist

您需要登录后才可以评论 登录 | 注册

关闭

站长推荐上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询 |  EETOP 创芯网 ( )

GMT+8, 2020-7-17 01:23 , Processed in 0。028955 second(s), 9 queries , Gzip On, Redis On。

Powered by X3.4

国丰彩票© 2001-2017

返回顶部
吉林快3走势 美狮彩票 全中彩票 全中彩票 王者彩票开户