【程序人生】研二,来北京100天了,记录一下

2023-11-01 03:12

本文主要是介绍【程序人生】研二,来北京100天了,记录一下,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 中科院牛马的100天工作总结
    • ①OFDM系统搭建与建模
    • ②数字IC设计流程及相关工具调研
    • ③芯片通信架构调研——片上网络
  • 计算机、芯片的魅力何在?

7月23日坐飞机从连云港来到北京大兴机场,辗转地铁到中关村,收拾一下分配的破烂宿舍,在暑假提前开始了我的研二生活。
今天开题报告改不动了,干脆记录下最近的生活,权当放松一下。一看日期10月31日,刚好一百天。

北京大兴机场

北京大兴机场

中科院牛马的100天工作总结

这一百天我做的工作可以分为三类:

①OFDM系统搭建与建模

4G和5G通信用到了OFDM(正交频分复用)技术进行通信,我负责的部分是FFT。
FFT(快速傅里叶变换)是通信的重要一环,每个人的手机里、实验室的频谱仪中都有执行FFT算法的硬件。
FFT这一块的理论主要涉及三个方面,一是高数中的傅里叶级数,二是通信中的采样定理、频谱分析,三是算法中的分治思路。在搞清楚理论的基础上,使用Verilog硬件描述语言画出FFT的电路图,然后进行仿真。
在这里插入图片描述

②数字IC设计流程及相关工具调研

芯片,也就集成电路,将无数个开关集成到一起,通过电压来控制0和1,最终实现想要的结果。
实现一个基本的加法、乘法器还可以用手工画逻辑门,看真值表,但做一个CPU肯定不行,需要依赖EDA(Electronic Design Automation,电子设计自动化)工具帮助我们将代码转化为图,布局布线,分析时序。
这部分工作我整理了数字IC设计的流程,掌握了VCS、DC、ICC等工具的基本使用,算是入门了芯片设计领域。
在这里插入图片描述
数字IC设计流程图
在这里插入图片描述
数字IC设计后端工具

③芯片通信架构调研——片上网络

举个例子说明延时的重要性:
王者荣耀中在你就要反杀对面时,突然卡460,是不是要气的扔手机?

随着如今晶体管的工艺尺寸从180nm到28nm,再到5nm,芯片晶体管越来越小意味着硬件的延时变小了,但连接硬件的互联线延时并没有缩小。这意味着芯片上的互联架构越来越重要了——传统基于总线的通信架构采用的全局互联线延时太大,我们难以接受。

这部分工作调研了**片上网络(Network on Chip,NoC)**作为一种新的芯片通信架构,如今越来越火热,例如华为的鲲鹏920芯片就使用了双环形NoC拓扑作为其芯片的通信架构。
在这里插入图片描述

计算机、芯片的魅力何在?

回想大一选择转到计算机的原因在哪呢?可能是觉得用C语言可以写自动关机的程序、用Java可以做网站,电影中咔咔几行代码对面楼直接断电的黑客,这太酷了。不转到计算机专业,在原来的信息管理与信息系统专业,我就无法深入学习相关知识。
在得知组里能学习芯片设计时,感觉也很棒。不过时间久了,人可能慢慢就会对所从事的工作祛魅,回归到琐碎的本质。

琐碎的生活是这样的:水个专利毕业算了、纠结于和领导讲话该怎么咬文嚼字?

这些事情不是极客该考虑的。

极客的特质,我想包括:不断追求核心技术、保有想象力和好奇心、审慎地对待来自权威的意见但抱有批判性思维。

在这里插入图片描述
新中关街景

滚烫的理想主义将化作黑夜中的野火,灵魂的欲望便是命运的先知

这篇关于【程序人生】研二,来北京100天了,记录一下的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/320070

相关文章

Spring Retry 实现乐观锁重试实践记录

《SpringRetry实现乐观锁重试实践记录》本文介绍了在秒杀商品SKU表中使用乐观锁和MybatisPlus配置乐观锁的方法,并分析了测试环境和生产环境的隔离级别对乐观锁的影响,通过简单验证,... 目录一、场景分析 二、简单验证 2.1、可重复读 2.2、读已提交 三、最佳实践 3.1、配置重试模板

在 Spring Boot 中使用异步线程时的 HttpServletRequest 复用问题记录

《在SpringBoot中使用异步线程时的HttpServletRequest复用问题记录》文章讨论了在SpringBoot中使用异步线程时,由于HttpServletRequest复用导致... 目录一、问题描述:异步线程操作导致请求复用时 Cookie 解析失败1. 场景背景2. 问题根源二、问题详细分

将java程序打包成可执行文件的实现方式

《将java程序打包成可执行文件的实现方式》本文介绍了将Java程序打包成可执行文件的三种方法:手动打包(将编译后的代码及JRE运行环境一起打包),使用第三方打包工具(如Launch4j)和JDK自带... 目录1.问题提出2.如何将Java程序打包成可执行文件2.1将编译后的代码及jre运行环境一起打包2

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明

将sqlserver数据迁移到mysql的详细步骤记录

《将sqlserver数据迁移到mysql的详细步骤记录》:本文主要介绍将SQLServer数据迁移到MySQL的步骤,包括导出数据、转换数据格式和导入数据,通过示例和工具说明,帮助大家顺利完成... 目录前言一、导出SQL Server 数据二、转换数据格式为mysql兼容格式三、导入数据到MySQL数据

关于rpc长连接与短连接的思考记录

《关于rpc长连接与短连接的思考记录》文章总结了RPC项目中长连接和短连接的处理方式,包括RPC和HTTP的长连接与短连接的区别、TCP的保活机制、客户端与服务器的连接模式及其利弊分析,文章强调了在实... 目录rpc项目中的长连接与短连接的思考什么是rpc项目中的长连接和短连接与tcp和http的长连接短

Oracle查询优化之高效实现仅查询前10条记录的方法与实践

《Oracle查询优化之高效实现仅查询前10条记录的方法与实践》:本文主要介绍Oracle查询优化之高效实现仅查询前10条记录的相关资料,包括使用ROWNUM、ROW_NUMBER()函数、FET... 目录1. 使用 ROWNUM 查询2. 使用 ROW_NUMBER() 函数3. 使用 FETCH FI

Python MySQL如何通过Binlog获取变更记录恢复数据

《PythonMySQL如何通过Binlog获取变更记录恢复数据》本文介绍了如何使用Python和pymysqlreplication库通过MySQL的二进制日志(Binlog)获取数据库的变更记录... 目录python mysql通过Binlog获取变更记录恢复数据1.安装pymysqlreplicat

Servlet中配置和使用过滤器的步骤记录

《Servlet中配置和使用过滤器的步骤记录》:本文主要介绍在Servlet中配置和使用过滤器的方法,包括创建过滤器类、配置过滤器以及在Web应用中使用过滤器等步骤,文中通过代码介绍的非常详细,需... 目录创建过滤器类配置过滤器使用过滤器总结在Servlet中配置和使用过滤器主要包括创建过滤器类、配置过滤