笔记
文章平均质量分 58
Starterman
个人记录的博客网站,共建分享
展开
-
python的垃圾回收机制
在python中维护了refchain的双向环状链表,每个链表中存储程序的对象,每种类型的对象中有引用计数的值,当引用计数值为10时会进行垃圾回收(对象销毁、refchain移除)。但是当较大数据出现循环引用现象,python引入了标记清除和分代回收,提出了0代(700个)、1代(10次)、2代(10次),触发扫描进行标记清除。1、引用计数引用计数的缺陷:2、标记清除为了解决引用计数器的缺陷在python的底层维护了一个链表,专门放可能存在的缺陷(专用于保存缺陷的链表)。主要是对链表进行原创 2021-11-18 10:59:34 · 1829 阅读 · 0 评论 -
pyqt5输出内容到界面GUI以及调用子窗口
一:简单的append方法先po代码,这是界面(基于其它博主进行改造)name:Ui_ControlBoard.pyfrom PyQt5 import QtCore, QtWidgets class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(800, 600) self.centralwid原创 2021-10-21 10:09:42 · 5574 阅读 · 2 评论 -
关于点+函数(变量)的基本用法
项目中通常用函数用于对数据进行处理,或返回(返回有bool,有数据),或输出。点 + 函数:文件名+“ . ”+函数是对导入外部文件的其中函数进行调用,用于实例化的时候是写类如:这里的at_frame是import的文件本函数,self+“ . ”+变量名 是实例属性,在同一个类里面可以调用其它函数,使用实例+ “ . ”+ 函数是调用实例属性还有一些内置三方库的“ . ”+函数,就是执行这个回调函数这里的几个函数是库函数————————————————————————————————原创 2021-10-18 19:34:57 · 483 阅读 · 0 评论 -
git的基本操作
git(分布式版本管理),用于多人开发,还有svn(集中版本控制)用于替代bitkeeper,git的开发者是李纳斯。git支持很多linux的命令操作git config --global --listgit config --global user.name “xxxxxx”git config --global user email “xxxxxxx@qq.com”git核心内容:git add . 到暂存区,点表示全部文件git commit -m + operation 到本地仓库原创 2021-09-10 18:13:33 · 92 阅读 · 0 评论 -
绝对路径和相对路径(python)
可以直接从visual studio code里找出文件的相对路径和绝对路径一般来说在本盘里面的可以进行相对路径的访问,其它盘貌似不可行。举例如:其中 1.txt文件内容为一行字母,这里调用相对路径输出txt内容。...原创 2021-06-09 10:13:11 · 214 阅读 · 2 评论 -
缩略词含义(实习记录)
1,Falsh内存,存储器可以在不加电的情况下长期保存数据,也能对数据进行快速擦书和重写。典型的U盘。2,高速缓存(Cache),128k~4MB,缓解高速CPU与低速内存的速度匹配问题。3,以太网(英语:Ethernet)是为了实现局域网通信而设计的一种技术,它规定了包括物理层的连线、电子信号和介质访问层协议的内容。以太网是目前应用最普遍的局域网技术,取代了其他局域网标准如令牌环、FDDI和ARCNET。4,互联网(英语:Internet)是一个网络的网络,它是由从地方到全球范围内几百万个私人的,原创 2021-05-06 16:54:04 · 202 阅读 · 1 评论 -
烧录bit文件及自动化脚本分析(个人记录)
git系统用于内部共享文件。利用git clone + 链接地址实现。上述目的是为了使公司的芯片和开发板连接在一块连接起来。上述目的是为了使接收工具和开发板连接在一块连接起来,download两个文件,分别是该版本需要启动两个.c文件。也就是用上面两个文件导通芯片和开发板及调试板子的链接,接下来在VS里面利用脚本进行调试工作。...原创 2021-04-21 15:37:37 · 1001 阅读 · 0 评论 -
物联网之路由器和交换机篇
路由器的定义与特点路由器(Router)是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备。它能够理解不同的协议,例如某个局域网使用的以太网协议,因特网使用的TCP/IP协议。路由器又可以称之为网关设备。路由器就是在OSI/RM中完成的网络层中继以及第三层中继任务,对不同的网络之间的数据包进行存储、分组转发处理,其主要就是在不同的逻辑分开网络。而数据在一个子网.原创 2021-04-15 11:35:08 · 2219 阅读 · 0 评论 -
po一些verilog的代码(通信方面)
异步通信和同步通信的区别在是否有同步时钟信号。异步通信需要发送端和接收端有相同的收发数据速率。UART、SPI、I2C。上面实现了将并行信号转变为串行信号,下面的代码反之。原创 2020-09-14 20:13:28 · 408 阅读 · 0 评论 -
po一些verilog的代码
这边是写ram的代码,先是定义了几个端口,ram的读写地址和写/读数据端口,输入的ram_rd_data是没用到的。上面的代码实现了使能判断,记了个数。下面的代码实现在前32个时钟周期内将写的数据output到RAM里面,后32个周期内将读写的地址output到RAM里,就是简单的累加运算。输出的是这里有一个问题:这里没有read的代码,如何read?(不需要写?本身就可以直接读)如何断定output的地址写入的就是要写信号的值,它之间如何挂钩?(自带属性)可以发现,这里的连线情况原创 2020-09-04 16:35:38 · 190 阅读 · 0 评论 -
UVM和System verilog笔记总结(四)
virtual sequence 即虚seq,用于管理多个实sequence的执行顺序。下面有三个sequence,此时需要virtual sequence去管理这三个的顺序。virtual sequence和virtual sequencer需要成对写,使用例化实的sequence和sequencer控制:此时在virtual sequence里面启动,而不是之前在test.sv里面用default或start函数启动。具体方法如下:先例化再启动,用 `uvm_do_on实sequence原创 2020-09-03 09:17:55 · 400 阅读 · 0 评论 -
TCP/IP协议/DNS/子网掩码
这是一个分层、多协议的通讯体系,用于网络通讯。下面是四层的协议系统。网络层和数据链路层一同连接主机,网络层通过ARP的广播特性将物理地址锁定主机,同时,网络层锁定主机,完成通信。WAN广域网、外网、公网。是连接不同地区局域网或城域网计算机通信的远程网。一般指的是路由器的WAN口,它只能够用来连接猫、光猫、入户网线,或者上级网络,不能够用来连接电脑。局域网的封闭性可以实现几公里范围内文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能LAN(1、2、3、4)局域网口原创 2020-08-10 12:29:21 · 497 阅读 · 0 评论 -
UVM和System verilog笔记总结(三)
常用的几个phase使用raise和drop标签来让phase机制同步运行。断言assertion有助于提高效率,定位报错,在property里面写判断语句。上面的意思是sequence配合.ended语句判断是否全部符合条件,验证人员编写端口的assertion。|—>同一个时钟沿触发后面的句子|=>下一个时钟沿触发后面的句子判断“|”前面的request是否为高电平,然后触发后面的sequenct。这里的【1:4】的意思是在时序1到4之间的acknowledge都必须原创 2020-08-04 17:02:08 · 1205 阅读 · 0 评论 -
一个UVM_Test example
首先:一个完整的testbench的顶层文件由testenvdriver-monitor构成1、先讲test怎么写,调用uvm_test的基类拓展test example 构造environment,里面构建build_phase,build_phase是7大机制中的一个,type_ id::create2、接下来写environment,构建build_phase,type_ id::create3、接下来写component,写里面的函数。上面是top顶层文件的书写接下来对底层的原创 2020-08-01 07:23:49 · 951 阅读 · 0 评论 -
UVM和System verilog笔记总结(二)
TLM1.0 interface object(在其他的验证方法学里面继承发展,如systemC和OVM)export(中间部分)、port、imp、fifo/put() 、get() write()FIFO和write()用的较多;在上面的问题中,为什么TLM不能实现config_db? 因为麻烦!interface只能在driver和monitor用得到,其他的无。put mode用法.先写输出端:1:extends uvm_component;2:uvm_bloking_put_po.原创 2020-07-28 18:44:35 · 963 阅读 · 0 评论 -
UVM和System verilog笔记总结
UVM是一个方法,是一个平台。UVM-1.2平台提供了:uvm_test/env/sequence/sequencer/driver/monitor/agent、base/comp/tlm/seq/ral/'uvm_fatal/error/warning/info/object_utils/component_utils(extends使用时需要注册)uvm_port/socket/sequence_item/transaction这些libraries库以uvm_test为test文件的基类,原创 2020-07-26 22:28:49 · 3057 阅读 · 0 评论 -
关于verilog开发板实践(个人记录)
本页面以流水灯为例一,编写.v文件如下(代码贴下面):module flow_led(input CLK_50M,input RST_N,output reg [3:0] ledA);reg [23:0] counter;always @(posedge CLK_50M or negedge RST_N) beginif (!RST_N)counter <= 24’d0;else if (counter < 24’d10000000)counter原创 2020-06-19 09:54:27 · 903 阅读 · 0 评论 -
verilog(知识点总结篇)
一、状态机二、RTL模拟电路得到RTL图如下:assign是组合逻辑的语句;always是时序逻辑的语句;reg语句用于使用寄存器;wire一般用于线网的连线用法三、modelsim仿真全过程:1)编写.v文件2)配置EDA tool settings,点击 start 的 test bench 生成.vt文件3)修改要测试的testbench的测试内容4)配置simulation的.vt文件5)进行仿真...原创 2020-06-07 17:09:26 · 2790 阅读 · 0 评论 -
关于python的Tkinter的小例子(个人记录)
一、root = Tk()root.geometry(‘500x600’)msg1 = Message(root,text = ‘try one time’,fg=‘red’)msg1.place(relx=0.2,y=80,relheight=0.3,width=200,)root.title(‘example’)root.mainloop() ##打出红色字体二、import tkinterimport timedef gettime():timestr = time.原创 2020-05-20 13:20:35 · 943 阅读 · 0 评论 -
python简单自动化测试excel(个人记录篇三)
import xlrd ##第三方库读取excelexcel = r’C:\desktop\1.xlsx’ ##需要加一个‘ r ’workbook = xlrd.open_workbook(excel) ##打开excelprint(workbook.sheet_names()) ##打印出子表名字,返回list格式worksheet = work.sheet_names()[1] ##使用某个子表格rows = worksheet.row_values(1) ##读取第二行rows = w原创 2020-05-17 07:53:35 · 233 阅读 · 0 评论 -
python简单自动化测试mysql(个人记录篇二)
pip install mysqlclient ==1.3.12 在cmd里面输入具体代码如下:其中用到.fetchone() ##表示提取某一行.fetchmany(some) ##表示提取some行.fetchall() ##表示提取所有行小提醒数据库表格第二列是row[1]rowcount是可调用的表格总行数...原创 2020-05-16 21:01:08 · 317 阅读 · 0 评论 -
Fiddler、Postman工具学习个人小结篇
Fiddler和Postman工具的使用共同点:都支持POST和GET方法,抓包、抓请求、模拟发送请求,都可以使用代码对两个工具进行一些操作,一个是Python,一个是Java script不同点:Fiddler: 界面简明一些,功能没有Postman丰富,无法进行批量测试,可以在最下面的黑色框内输入一些筛选条件,"断点"功能可以控制滚动的页面,以及Filter可以用于关键字筛选,可以进行弱网测试,控制响应的跳转内容,比如实现网站页面内容的本地文件上传。Postman: 功能多一些,导入CSV、TE原创 2020-05-12 11:22:32 · 1720 阅读 · 0 评论 -
Postman的第一个自动化测试(个人记录篇二)
一、工具参数化先创建校验请求:提醒:调用的时候要用双花括号 “ {{}} ” 。这里的Run功能,可以实现从本地上传资料,比如登录网页验证的账号、密码。(文件类型有TXT、JSON、CSV)一、Postman随机数用于大量测试重复内容。1)添加 " {{KaTeX parse error: Expected 'EOF', got '}' at position 5: guid}̲} "、" {{timestamp}} " 时间戳、“ {{$randomInt}} ” 。这三种会在响应的时候原创 2020-05-11 14:37:37 · 205 阅读 · 0 评论 -
Postman的基本界面和用法(个人记录篇一)
一、基本界面重点强调,右边的JS脚本和右上的Code代码部分。比如:pm.globals.get("variable_key "); ##得到全局变量Code部分可以生成很多的代码,并且可以修改。点击Collections右边的Run,进入Collection Runner的界面,进入即可进行批量运行。右键文件夹,点击Edit可以对文件里面请求的Key和Value进行修改,即修改变量,比如修改登录的账户和密码,可以使用新的账户密码发送请求。...原创 2020-05-11 11:13:36 · 1502 阅读 · 0 评论 -
python文档操作记录篇
1) python打开文件的绝对路径是:with open (‘C:/Users/Administrator/Desktop/1.txt’)as file:右斜杠 “ \ ”如果要操作的 .py 和被操作的文件是在同一个文件夹内,可以不用输入绝对路径,直接输入:with open (‘1.txt’) as file:2)读写、关闭文档:f = open(“test.txt”, ‘r’) # 读模式f = open(“test.txt”, ‘w’) # 写模式f = open(“img.bm原创 2020-05-10 11:11:07 · 233 阅读 · 0 评论 -
MYSQL介绍和初步应用(个人记录篇一)
什么是Mysql?关系型数据库,多用于处理表格数据,使用SQL编程语言进行描述,Linux终端、可视化工具可以控制数据库一、终端登录mysql及查看数据库的内容1)登录输入:mysql -uroot -p_____(密码)2)查询本机服务器上的数据库信息输入:show databases; ##分号结尾3)选中一个数据库进行操作输入:use ________(某数据库)se...原创 2020-04-30 18:48:18 · 213 阅读 · 0 评论 -
MYSQL基本指令(个人记录篇二)
对数据库表格进行操作:mysql -uroot -p____(密码)create database test;进入数据库、创建一个数据表:create table pet (name VARCHAR(20),owner VARCHAR(20),species VARCHAR(20),sex CHAR(1),birth DATE,death DATE); ##name和owner...原创 2020-04-30 20:49:48 · 237 阅读 · 0 评论 -
Fiddler工具使用 “HTTP/HTTPS/APP” 应用实践(个人记录篇一)
Fiddler 工具是什么?答:位于客户端和服务器之前的HTTP(或其他)的代理Fiddler工具功能是?答:监控浏览器的所有HTTP/HTTPSDE 流量、测试网站的性能等Fiddler工具的使用场景?答:接口调试、接口测试、web性能测试、判断前后端bug、开发环境的hosts配置,mock自动响应、弱网和断网的测试等Browsers----to----Server浏览器 ...原创 2020-04-27 12:56:27 · 624 阅读 · 0 评论