自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 2020.08最新必看 pytorch+cuda10.2(或10.1)+python3.7版 30min完成安装(五小时血泪经验)亲测可用!!防坑!!

博主之前电脑显卡为A卡一直在用cpu版本的,由于新换了一台1660ti卡的笔记本于是研究了一下怎么装gpu版本的pytorch下面进入正文,只有显卡为N卡才能装pytorch的cuda的版本,其他卡只能用CPU的版本。Anaconda是一个开源的包、环境管理器,可以用于在同一个电脑上安装不同版本的软件包,并能够在不同的环境之间切换,Anaconda不是语言,它只是python的一个集成管理工具或系统,我们只需要安装Anaconda就可以了,甚至不用单独去安装python。我们在使用过程中会出现conda

2020-08-18 20:50:46 22196 24

原创 蜂鸟学习笔记E203(七)——写回、存储器和ICB总线

E203如果只考虑单周期指令则为“顺序发射、执行写回”如果仅讨论长指令“顺序发射、乱序执行、顺序写回”如果都考虑“顺序发射、乱序执行、乱序写回”

2022-12-11 17:16:55 2244 1

原创 蜂鸟E203学习笔记(六)——交付

RISC-V没有条件码,也没有异常指令不用担心硬件实现上的异常。交付在执行阶段可以完成,写回需要在后续的周期内写回。IFU中主要是处理以下几种带条件的跳转指令。

2022-12-08 19:56:56 896

原创 蜂鸟E203学习笔记(五)——执行

指令所需要读取的操作数寄存器索引指令需要写回的寄存器索引指令的其他信息如指令类型、指令的操作信息等顺便注意:并非所有的处理器流水线都会在译码阶段读取操作数。在目前众多高性能处理器中,普遍采用在每个运算单元前配置乱序发射队列的方式,待指令的相关性解除之后并从发射队列中发射出来时读取通用寄存器组,然后送给运算单元开始计算。

2022-12-08 19:20:09 1891

原创 蜂鸟E203学习笔记(四)——取指

首先要保证存储器的读延时足够小,通常使用指令紧耦合存储器(ITCM)和指令缓存器(ICache)。

2022-11-29 22:44:32 1874

原创 蜂鸟E203学习笔记(三)——流水线结构

反压:当入口流量大于出口流量,这时候就需要反压,或者,当后级未准备好时,如果本级进行数据传递,那么它就需要反压前级,所以此时前级需要将数据保持不动,直到握手成功才能更新数据。而反压在多级流水线中就变得稍显复杂,原因在于,比如我们采用三级流水设计,如果我们收到后级反压信号,我们理所当然想反压本级输出信号的寄存器,但是如果只反压最后一级寄存器,那么会面临一个问题,就是最后一级寄存器数据会被前两级流水冲毁,导致数据丢失,引出数据安全问题,所以我们此时需要考虑反压设计。很容易理解,其中WAR和WAW都可以通过。

2022-11-27 18:37:09 1236

原创 蜂鸟E203学习笔记(二)--蜂鸟E203总体框架

蜂鸟E203处理器系统如下图所示。

2022-11-27 13:52:17 3569 2

原创 蜂鸟E203学习(一)--RISC的前世今生

RISC-V的基本指令集如下表基本指令集指令数描述RV32I47支持32位地址空间与整数指令,支持32个通用整数寄存器RV32E47RV32I 的子集,仅支持16个通用寄存器RV64I59支持64位地址与整数指令,同时支持 部分32位的整数指令RV128I71支持128位地址与整数指令,同时支持 部分64、32位的整数指令RISC-V的拓展指令集如下表拓展指令及指令集描述M8整数乘除指令A11。

2022-11-26 22:13:05 1680

原创 基于DDR3的串口传图帧缓存系统设计实现

FPGA学习笔记

2022-11-07 23:35:04 1943 1

转载 einops使用方法

einops使用方法

2022-06-13 21:41:44 1608

原创 pytorch学习神经网络的搭建

Containers容器(骨架的基本搭建)ModuleModule给所有神经网络提供框架,是所有神经网络模块的基类,然后实现他内部的一些方法从而搭建自己的神经网络。import torch.nn as nnimport torch.nn.functional as Fclass Model(nn.Module): def __init__(self): super().__init__() self.conv1 = nn.Conv2d(1, 20, 5)

2022-05-28 22:53:17 108

原创 python学习笔记(10)-模块

模块模块的概念模块是Pthon程序架构的一个核心概念每一个以拓展名.py结尾的Python源代码文件都是一个模块模块名同样也是一个标识符,需要符合标识符的命名规则在模块中定义的全局变量、函数、类都是提供给外界直接使用的工具模块就好比是工具包,要想使用这个工具包中的工具,就需要先导入这个模块模块的两种导入方式1)import导入import 模块名1,模块名2在导入模块时,每个导入应该独占一行import 模块名1import 模块名2导入之后,通过模块名使用模块提供的工具

2022-05-05 23:29:50 136

原创 python学习笔记(9)-类和对象——多态、类属性

多态 不同的子类对象 调用相同的父类方法,产生不同的执行结果1.多态可以增加代码的灵活度2.以继承和重写父类方法为前提3.是调用方法的技巧,不会影响到类的内部的设计class Dog(object): def __init__(self,name): self.name = name def game(self): print("%s蹦蹦跳跳玩耍"% self.name)class Xiaotianquan(Dog): def game(

2022-05-05 19:40:20 188

原创 python学习笔记(8)-类和对象——继承

继承继承实现代码的重用,相同的代码不需要重复的编写多态不同的对象调用相同的方法,产生不同的执行结果增加代码的灵活度继承的概念:子类拥有父类的所有方法和属性继承的语法:class 类名{父类} passclass Animal: def eat(self): print("吃") def drink(self): print("喝") def run(self): print("跑") def sleep(sel

2022-05-05 14:15:57 940

原创 python学习笔记(7)-类和对象——内置方法与封装案例

内置方法和属性del :方法类型 对象被从内存中销毁前,会被 自动 调用如果希望在对象被销毁前,再做一些事情,可以考虑以下__del__方法class Cat: def __init__(self,newname): self.name = newname print("%s 来了"% self.name) def __del__(self): print("%s 去了"% self.name)#使用类名()创建对象的时候,会自动

2022-05-03 23:17:19 547

原创 python学习笔记(7)-类和对象——self、初始化方法

类和对象面向过程和面向对象面向过程:1.把完成一个需求的所有步骤从头到尾逐步实现2.根据开发需求,将某些功能独立的代码封装成一个又一个函数3.最后完成的代码,就是顺序地调用不同的函数特点:注重步骤与过程,不注重职责分工如果需求复杂,代码会变得很复杂开发复杂项目,没有固定的套路,开发难度大。面向对象:是更大的封装,根据职责再一个对象中封装多个方法在完成某一个需求前,首先确定职责–要做的事情(方法)根据职责确定不同的对象,在对象内部封装不同的方法(多个)最后完成的代码,就是顺序

2022-05-01 17:19:36 855

原创 python学习笔记(7)-字典

字典:当索引不好用时映射耐克成为key,口号成为valuebrand = ['李宁','耐克','阿迪达斯']slogan = ['一切皆有可能','Just do it','impossible is nothing']print('耐克的口号是:',slogan[brand.index('耐克')])#字典的实现方式dict1 = {'李宁':'一切皆有可能','耐克':'Just do it','阿迪达斯':'impossible is nothing'}#字典不是序列类型,只是映射类型

2022-04-23 20:17:34 598

原创 python学习笔记(6)-类和对象

OO的特征Object Oriented面向对象,封装(信息隐蔽技术)、继承、多态class Turtle: #属性 color = 'green' weight = 10 legs = 4 shell = True mouth = '大嘴' #方法 def climb(self): print('我正在努力爬') def run(self): print('我正在飞快地前进') def .

2022-04-22 17:57:24 157

原创 python学习笔记(5)-文件

文件open(file, mode=‘r’, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)第一个参数file为文件名,第二个参数为打开模式如果w模式,文件不存在的话会重新创建一个f = open('E:\\record.txt')...

2022-04-18 15:52:13 590

原创 python学习笔记(4)-递归

递归递归求阶乘正整数阶乘指从1乘以2乘以3乘以4一直乘到想要求的数非递归写法:def factorial(n): result = n for i in range(1,n): result *= i return resultnumber = int(input('请输入一个正整数'))result = factorial(number)print(result)递归写法:def factorial(n): if n == 1:

2022-04-12 20:55:59 618

原创 python学习笔记(3)-函数

函数def MyFirstFunciton(): print('这是我创建的第一个函数') print('我表示很激动') print('感谢CCTV')MyFirstFunciton()def MySecondFunction(name): print(name + 'woaini')MySecondFunction('xiaojiayu')def add(num1,num2): return (num1+num2)print(add(1,2))

2022-04-12 17:17:50 676

原创 python学习笔记(2)-列表、元组

列表:一个打了激素的数组(1)创建列表创建一个普通的列表member = ['11','22','33']创建一个混合列表mix = [1,'xiaojiayu',3.14,[1,2,3]]创建一个空列表empty =[]向列表中添加一个元素append(),只能添加一个member = [1,2,3,4]member.append(5)print(member)[1,2,3,4,5]extend()可以添加一个列表这个元素member = [1,2,3,4]member.

2022-04-07 19:47:28 526

原创 python学习笔记(1)--小甲鱼

用python设计第一个游戏temp = input("猜数字")#temp是一个字符串变量,需要转化为整型;input是一个内置函数guess = int(temp)#一个等号表示赋值if guess == 8:#两个等号表示是否相等 print("wocao") print("猜对了也没有奖励")else: print("猜错啦应该是8")print("gg")BIF:Built-in functions内置函数。帮助程序员便捷得编写程序。python有

2022-04-06 21:30:02 760 2

原创 FPGA-乒乓操作

乒乓操作开发环境ISE14.7、verilog、spartan6实验目标使用两个读写时钟不同的双口RAM实现低速模块处理高速数据的乒乓操作.循环产生0-99和100-199两个数据包,输入时钟为50MHz输出时钟为25MHz理论学习外部输入数据流通过输入数据流选择单元将数据流输入到数据缓存模块,比较常用的存储单元有双口RAM,FIFO,SDRAM等。在第一个缓冲周期,数据流通过“输入数据流选择单元”将数据写入“数据缓冲模块1”。写完之后进入第二个缓冲周期,在第二个缓冲周期数据流通过“输入数据流

2021-12-23 21:46:40 7174 5

原创 自己动手写CPU(MIPS)----基础知识补充及单周期CPU取指译码

本次实验开始涉及MIPS架构CPU的设计。MIPS架构的CPU的传统流程为以下五个阶段:取指(Instruction Fetch)译码(Decode)执行(Execution)访存(Memory Request)回写(Write Back)实验目的上一次实验基本完成了访存的功能,这次实验主要是掌握单周期CPU控制器的工作原理及设计方法;掌握取指、译码阶段数据通路、控制器的执行过程。开发环境实验任务基础知识补充1、寄存器处理器包含的软件可见的寄存器种类如下:32个32 位通用

2021-12-09 22:27:18 3194 1

原创 自己动手写CPU(MIPS)----带刷新、暂停的四级流水线8位全加器

主要目的是理解一下阻塞流水线。代码

2021-12-08 18:44:33 1348 3

原创 FPGA学习-CORDIC算法详解

CORDIC算法 IP核详解CORDIC(Coordinate Rotation Digital Computer)算法即坐标旋转数字计算方法,是J.D.Volder1于1959年首次提出,主要用于三角函数、双曲线、指数、对数的计算。该算法通过基本的加和移位运算代替乘法运算,使得矢量的旋转和定向的计算不再需要三角函数、乘法、开方、反三角、指数等函数。FPGA是不擅长复杂的数学运算的,不支持浮点数,所以很多操作收到了限制,而cordic可以熟练实现各种比较复杂的数学计算,正好与我们的verilog语言互补

2021-12-01 15:39:31 2561

原创 win10环境下ISE14.7与Modelsim10.5se全套安装、配置、联合仿真,保姆级教学

博主最近实验室新换了一个台式机,以后科研终于可以告别小破笔记本电脑了,年初安装这两个软件的苦和累只有自己知道(你们现在应该也知道了)。趁着要给新电脑安装配置一遍软件的机会,记录一下这两个软件的安装流程,。我经过了配置的全过程,在这里保证这篇教程是真实可用的。在这里需要说的是截止2021年11月30日,Win11还不能兼容ISE14.7,具体体现在安装进度会卡在80%或82%不要问我为什么知道,电脑今天刚刚重装成Win10,期待以后win11能出一些类似的补丁,加油~因为版权原因,激活步骤不在CSDN中展

2021-12-01 15:38:26 9618 2

原创 计算机组成与设计 RISC-V版 学习笔记(一)

该版本电子书比较难找,需要电子书的关注我后私信邮箱即可领取博主出于兴趣打算自己实现一个RISC-V的CPU,因为博主研究方向只是和FPGA有交叉,投入到FPGA方面的时间有限,投入到实现CPU的时间会更少,所以实现的整个过程一定是比较漫长的,但尽量坚持到最后。本系列学习笔记只作为自己总结后方便复看,可能不会摘录所有重点!...

2021-09-01 09:45:04 1366

原创 FPGA-图像处理系列 基于Sobel算法的边缘检测设计与实现

学习内容以FIFO实现3行数据求和为基础,学习图像处理方面的基于Sobel算法的边缘检测,边缘检测在计算机视觉、图像分析和图像处理等应用中起着重要作用。实现功能开发环境开发板:特权同学xilinx spartan6开发板开发软件:ISE14.7、modelsim10.5编程语言:verilog理论知识学习1.边缘检测边缘是图像的基本特征,包含了用于图像识别的有用信息,在计算机视觉、图像分析和图像处理等应用中起着重要作用。边缘检测,针对的是灰度图像,顾名思义,检测图像的边缘,是针对图像像素点

2021-07-20 16:33:51 5761 1

原创 FPGA-全局时钟缓冲IBUFG BUFG IBUFGDS ODDR2

学习内容全局时钟缓冲,输入缓冲,输出缓冲开发环境xilinx spartan6、ISE14.7、modelsim10.5写在前面的话当你用ISE14.7时可能会出现如下的报错This design contains a global buffer instance, <clk_inst/clkout3_buf>, driving the net, <clk_out_OBUF>, that is driving the following (first 30) non

2021-06-25 17:09:01 6723

原创 FPGA-学习片外SRAM读写测试包括RAM ROM FIFO对比 总结与实战

学习内容RAM、ROM、FIFO等概念对比,SRAM读写测试。实现功能一个8位数字从0000000开始,每一秒自加1,并将每一秒的数字存入SRAM中,并在这一秒内读出存入的数字用八位的LED灯来显示。开发环境xilinx spartan6开发板、ISE14.7、modelsim10.5、verilog存储器相关知识RAM随机存取存储器(random access memory,RAM)又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通

2021-06-25 12:33:41 6484 4

原创 FPGA--简易DDS信号发生器 (内涵DDS与CORDIC IP核详解)附源码

学习内容简易DDS信号发生器的设计与验证,产生所需的正弦波、方波锯齿波,并进行verilog验证。实现功能可以通过按键控制来输出不同的波形。开发环境xilinx spartan6开发板、ISE14.7、modelsim10.5、verilogDDS相关知识DDS 是直接数字式频率合成器(Direct Digital Synthesizer)的英文缩写,是一项关键的数字化技术。与传统的频率合成器相比,DDS 具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用在电信与电子仪器领域,一般用它

2021-06-22 14:44:53 5226 4

原创 FPGA-DA模块学习 I2C接口(附源码)

学习内容D/A芯片DAC5571的使用,包括I2C的学习,并对代码进行详解。实现功能通过程序产生一个0-255循环递增的数据,通过I2C接口不断写入到DAC中,输出的模拟电压可以控制开发板上的某个LED的亮暗变化。结构如下开发环境xilinx spartan6开发板、ISE14.7、modelsim10.5、verilogI2C相关知识I2C 通讯协议(Inter-Integrated Circuit)是由 Philips 公司开发的一种简单、双向二线制同步串行总线,只需要两根线即可在连接于

2021-06-19 16:38:42 2783 1

原创 VIT视觉tansformer(一) transform介绍

VIT视觉tansformer(一) transform介绍博主近期受到2021顶刊CVPR、ICCV等有关transformer的启发,考虑结合到自课题组的相关工作于是开始学习一下这个新的网络。本总结参考知乎大佬深度眸,本系列通过介绍transformer的基本结构,结合VIT的相关成果如vision transformer和detr进行分析,目的在于快速初步入门。1.摘要transformer结构首先是google在17年的Attention Is All You Need论文中提出的,在NLP

2021-06-09 16:25:57 1758 1

原创 tensorflow基本版本编程问题和显存爆掉问题记录

AttributeError: module ‘tensorflow’ has no attribute 'Session’错误解决import tensorflow as tftf.Session()报错错误原因:报错AttributeError: module ‘tensorflow’ has no attribute ‘Session’。这是因为编程采用的是1.0的写法,但是在新的Tensorflow 2.0版本中已经移除了Session这一模块,解决办法有两个1:改换运行代码tf.c.

2020-08-18 02:21:03 624

原创 2020-08 亲测最方便详细可用!Win10下Anaconda(python3.8)+Tensorflow2.1.0-gpu版本+spyder安装教程

Win10 下Anaconda+Python3.8+Tensorflow2.1-gpu版本安装教程(新换了一台电脑,最新最详细亲测可用)之前一直在用cpu版本的,由于新换了一台1660ti卡的笔记本于是研究了一下怎么装gpu版本的tensorflow下面进入正文。Anaconda是一个开源的包、环境管理器,可以用于在同一个电脑上安装不同版本的软件包,并能够在不同的环境之间切换,Anaconda不是语言,它只是python的一个集成管理工具或系统,我们只需要安装Anaconda就可以了,甚至不用单独去安装

2020-08-18 01:56:28 4595 26

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除