Cloudflare、睡覺——大规模宕机后的随想
写于2025.11.18,纪念 Cloudflare 发生的大规模故障。
更适合Powershell体质的ln
前言
在更适合Powershell体质的grep中重定义了grep。Linux中的ln命令也非常好用,创建软链接,可以省下很多需要复用的文件空间。
没想到Powershell中没办法使用cmd的mklink,自带的创建软连接命令比我命还长。自己写一个脚本重定向!
代码
因为不能执行cmd命令,只能使用Powershell函数,因此新建一个ln.psm1模块,并保存到C:\Users\UserName\Documents\PowerShell\Modules\ln,在Powershell初始化时导入即可。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657function ln { param( [switch]$d, # -d: 强制目录链接 [switch]$h, # -h: 显示帮助 [string]$target, [string] ...
降低腾讯ACE反作弊扫盘优先级并提升游戏性能
前言
打大乱斗动不动就卡,太烦了。这B反作弊跟小蓝熊坐一桌去。
注册表修改
参考:解决英雄联盟LOL卡顿掉帧问题很多方法都没用的试下这个 - 哔哩哔哩
新建一个注册表文件1.reg:
123456789101112131415161718192021Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\DeltaForceClient-Win64-Shipping.exe\PerfOptions]"CpuPriorityClass"=dword:00000003"IoPriority"=dword:00000003[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\League of Legends.exe\P ...
学银在线解除粘贴限制
防君子、不防小人也。
GTKWave修改字体大小
前言
目前看波形依旧没有什么现代化的软件,还是得用GTKWave。这玩意本来是给Linux用的,Windows上的界面看起来很奇怪。而且字体太小了,眼睛受不了。如何修改字体和字体大小呢?
配置文件与启动参数
参考官方文档:GTKWave 3.3 Wave Analyzer User's Guide
编辑用户文件夹下的.gtkwaverc文件(不存在就新建一个):
1234567use_big_fonts 8 //字体字号highlight_wavewindow 1 //高亮被选择的信号波形// color_grid feeeed // 高亮信号颜色fill_waveform 1 //高值填充disable_mouseover 0 //鼠标可查看波形hier_max_level 5 //显示信号归属层级的最大值left_justify_sigs 1 //信号左对齐
之后用参数启动:
gtkwave -r path/to/config/.gtkwaverc your_vcdfile即可。
其实也可以修改字体:
fontname_si ...
超大规模集成电路设计笔记:第六篇
应付一下应试。
缩写
PLA: Programmable Logic Array
PAL: Programmable Array Logic
PLD: Programmable Logic Device
ROM: Read-Only Memory
RAM: Random Access Memory
ALU: Arithmetic Logic Unit
IEEE: Institute of Electrical and Electronics Engineers
VHDL: VHSIC Hardware Description Language
CMOS: Complementary Metal Oxide Semiconductor
FPGA: Field-Programmable Gate Array
RISC: Reduced Instruction Set Computer
CISC: Complex Instruction Set Computer
DSA: Domain Specific Architecture
SoC: System on Chip
FP: Float ...
One Last Kiss 风格图片生成
「 第一次去卢浮宫 并无什么特别的感觉
因为独属于我的蒙娜丽莎 我早已遇见 」
因为独属于我的蒙娜丽莎 我早已遇见 」
超大规模集成电路设计笔记:第五篇
这一章不考,至少往年题没有考过。
SoC总线
总线提供了系统中各个设备之间一种互连的访问共享硬件机制
在数字系统中,总线承担数据传输任务,如处理器和存储器之间的数据传输
总线的传输能力由总线的带宽和工作频率决定
总线的设计通常要考虑4个因素:总线宽度、时钟频率、仲裁机制和传输类型
常见的总线有:
AMBA:ARM公司定义的总线体系,广泛用于嵌入式SoC,包括 AHB、APB、AXI 等多个子协议
OCP:开放式核心接口协议,模块化设计,适合IP核集成
Wishbone:由OpenCores定义的开源SoC总线,简单易用,适合教学或FPGA设计
Avalon:原Altera公司定义的片上总线协议
AMBA
常见IP
SoC中的常见IP包括:中断控制器、实时时钟、SPI、定时器、看门狗等。
一个完整的 SoC 通常包含如下模块(IP):
123456789101112131415┌──────────────────────────┐│ CPU / DSP │ ← 控制/计算IP├──────────────────────────┤│ ...
LaTeX代码开启连字等特性
前言
在 LaTeX插入代码并设置高亮中,使用minted和listings 为代码块添加了高亮。但许多等宽字体都包含连字(Ligature)特性,可以增强代码的可读性,视觉效果更好。那如何在代码块里也开启连字特性呢?
这里安利Maple Mono字体,对中文显示极其友好,完美的中英文2:1比例,还支持Nerd Font。我已经将所有等宽字体都换成Maple Mono Normal NF CN了。
修改样式
首先要确保使用了fontspec宏包:\RequirePackage{fontspec}
接着指定等宽字体,并添加:
12345678910\setmonofont[ AutoFakeBold=true, ItalicFont=MapleItalic, % 指定斜体字体 Contextuals = Alternate, % 开启连字 Ligatures = Common, % liga CharacterVariant={1,62,63}, % cv特性 StylisticS ...
超大规模集成电路设计笔记:第四篇
Cache
可参考 计算机原理与嵌入式系统笔记:第六篇
直写与回写
Write-Through(直写) 和 Write-Back (回写)是两种 Cache 写策略,用来决定当 CPU 写数据时,数据如何更新到主存的。
当 CPU 对 cache 写数据时,同时也把数据写入主存,称为直写:
数据一致性好(cache 和 主存内容始终同步)
对系统可靠性高
简单易实现
写操作慢,写操作频繁时会增加总线带宽占用
当 CPU 写 cache 时,只更新 cache 中的数据,不立即写入主存,只有当该 cache block 被替换时,才将其写回主存,称为回写:
写操作快,节省总线带宽
数据一致性较差
实现复杂,需要 dirty 位标记
系统崩溃时可能丢失尚未写回的数据
写缓冲区可以解决直写写内存慢、回写替换时大量写回的问题,因此均需要写缓冲区。
性能例子
假设:
I-Cache命中缺失率2%
D-Cahce命中缺失率4%
未命中惩罚为100周期
基础CPI为2
数据存取类指令占总共的36%
则可计算每次指令的缺失周期数:
I-Cache: 0.02 x 100 = 2
...


