Luyoung
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
LA 挑战赛:龙芯杯团体赛总结

LA 挑战赛:龙芯杯团体赛总结

时间线以下时间线根据仓库 commit 来写: 4 月 1 号,开始建立仓库并搭建开发环境 5 月中旬,完成了绝大部分指令,接入 chiplab 6 月初,开始做 cache 6 月中旬,成功通过 rtthread 等测试程序 7 月 1 号,经过不断地 debug,终于在 chiplab 仿真环境中启动 linux 7 月 24 号,成功在fpga 下板启动 linux 7 月 27 号,重构
2025-08-26
体系结构
#龙芯杯
GLCC万众一芯单元验证(四)

GLCC万众一芯单元验证(四)

前言个人感觉学习 Toffee 的话,还是看 Toffee 的 官方文档 比较好。本文将会就我本人的理解,写一点需要重点理解的东西。 异步环境异步是符合真实的硬件运行逻辑的,因为芯片中的电路在每一个时钟周期后,所有的引脚信号都会更新。 1234567891011121314import toffeefrom toffee.triggers import *async my_coro(dut):
2025-08-07
体系结构
#万众一芯
GLCC万众一芯单元验证(三)

GLCC万众一芯单元验证(三)

前言本来应该做收集功能覆盖率,但是感觉难度有点高,还是先做一下 Toffee 的官方的 example,快速熟悉一下。 Adder 模块这个例子是一个加法器,它是一个组合电路: 12345678910111213module Adder #( parameter WIDTH = 64) ( input [WIDTH-1:0] io_a, input [WIDTH-1:0] i
2025-08-06
体系结构
#万众一芯
chplab 打包成 docker 镜像

chplab 打包成 docker 镜像

前言由于 chiplab 在配置的时候需要将工具一一准备好,还有某些库比如随机测试,还需要自己下载。比较麻烦,于是我将一个配置好的环境打包成 docker 镜像,这样可以很方便得就能立即使用。 docker 镜像制作首先在 chiplab 中写一个简单的 Dockerfile: 1234567891011121314151617181920212223242526272829303132FROM
2025-08-06
chiplab > 龙芯杯
#docker #体系结构 #chiplab
GLCC万众一芯单元验证(二)

GLCC万众一芯单元验证(二)

练习0: 冒烟测试这个练习是第二章 的练习,我改成异步的了: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556from SyncFIFO import *import asyncio #创建test_reset_dut 函数作为的测试用
2025-07-27
体系结构
#万众一芯
GLCC万众一芯单元验证(一)

GLCC万众一芯单元验证(一)

问题在官方教程中有这样一个事例: 1234567891011121314151617181920212223242526272829303132333435363738394041# test_with_toffee.pyfrom RandomGenerator import DUTRandomGeneratorimport randomfrom toffee import start_clock
2025-07-25
体系结构
#万众一芯
LA 挑战赛:成功在 FPGA 上启动 linux_kernel

LA 挑战赛:成功在 FPGA 上启动 linux_kernel

前言从 7月1号 到现在在 FPGA 启动 linux_kernel 已经过了 23 天了,虽然中间考试和休息占了 5 天左右,这也说明在 chiplab 中启动 linux_kernel 和在 FPGA 上启动 linux_kernel 有很大的跨度以及很多的工作量。事实上,工作量主要集中在 debug 上,下面细说一下常见的 bug 以及 cacop 的实现细节。 cacop没错,想要使用双
2025-07-24
体系结构
#CPU #FPGA
LA 挑战赛:综合的时候 vivado 内存爆炸

LA 挑战赛:综合的时候 vivado 内存爆炸

vivado 内存占用过多在综合 cache 的时候,发现内存直接占用过多,导致综合失败,仔细研究了下代码发现是这个引起的: 12345678910111213141516171819reg [149:0] cache_line_0[255:0];reg [149:0] cache_line_1[255:0];reg [149:0] cache_line_2[255:0];reg [149:0]
2025-07-23
体系结构
#CPU #FPGA #vivado
一次升级内网环境的记录

一次升级内网环境的记录

前言由于原来的路由器连接的设备过多就会导致内网中所有连接这个路由器的的设备自动失去网络连接,只有通过重启设备解决,很影响效率。于是我买了一个中国移动定制的路由器,型号是 WTC181。 操作流程货收到了后,由于这个路由器是 WAN/LAN 混合,导致我从原来的路由器拉出来的 LAN 插到 WTC181 上的 WAN/LAN 混合口后,并没有自动构建一个新的内网环境。 然后我打开
2025-07-20
网络
#NetWork
LA 挑战赛:双 Cache 设计

LA 挑战赛:双 Cache 设计

前言cache 的设计如果能配合良好的 debug 系统,那么就不是太难。由于 icache 只是 dcache 的一个子集功能,因此只要设计好了 dcache,icache 自然就能正常运作。笔者设计好 cache 并成功启动 linux_kernel 后,认为 cache 设计可以问分为两个部分:可缓存的访问和不可缓存的访问,用信号 uncache_en 来指明,这个信号由访存单元和访问 ca
2025-07-15
体系结构
#CPU #cache
123…23

搜索

Hexo Fluid
总访问量 次 总访客数 人