写作不易,我真的很忧郁

总是有点感想,但是写下来的时候,却只有几句话。写作真的不容易。要牺牲玩的时间,要静下浮躁的心。尤其放寒假的我,好像没有了束缚,宁愿逛几个小时的草榴,也不愿敲敲键盘写点东西。就算是现在,我也是边写边玩手机。安逸总是舒服的,而做点事总是挣扎的。漫无目的的写,就好像中学时代写800字作文一样痛苦,一点一点地挤。所以今天打算围绕着写文章(见笑,姑且称之为文章吧),来说说其实我也是懂忧郁的。哈哈~

我从初中开始,就偶尔会在深夜写写感想。随便写,想到什么写什么。但是那个晚上,我一定是忧郁的,或者至少是很平静的。最经常的就是感慨感慨时间过的好快,上一次定的目标又没有实现了。那时候我没有手机,不对有一把触屏的山寨手机。但是真的很垃圾,用没多久,写个字都难。

后来到了高中,由于一心想读好书,压力也比较大,所以到后期平均每个月都在某个深夜写感想顺带计划和反思。那个时候写作真的是一个很好的释放压力的方式。不过现在也觉得写作挺释放心灵的。

继续阅读

MOS频率限制因素和截止频率

MOSFET有两个基本频率限制因素分别是:

  1. 沟道运输时间
  2. 栅或电容的充电时间

沟道运输时间:

简单的说就是载流子在沟道的运输时有时间的。当沟道长度除以载流子在饱和区的漂移速度就是其运输时间。而这个时间限制则可以就是MOSTEF的最大频率限制因素之一。因为,不论设计在怎么快,这个运输时间是一定存在的。

栅或电容的充电时间:

截止频率定义为电流增益为1的时候的频率。根据米勒电容等效原理,输入端的电容将会很大,而输出端的电容则可以忽略。于是用Cg来等效输入栅极电容。

Verilog实用define和include设置仿真模式与编译模式

最近FPGA琢磨了有一段时间了。虽然后期因为期末考原因,琢磨时间比较少了。每次停歇一段时间后,从新思考问题,问题似乎没有起初那么难解决了,敲起代码来顺手很多。大概是时间慢慢沉淀了知识,吸收了经验。理论和经验都需要时间来消化。这段时间大约写了有5~10K的Verilog了,自己的代码风格也基本定型了。对HDL也有更贴近的认识了。看了些视频教程,这从中吸收了不少精华。其中就包括开源骚客(http://dengkanwen.com/)的SDRAM系列教程。收货颇多,尤其是他的设计逻辑方法。当工程量逐渐增大时,就必须有清晰的逻辑时序图,系统框图。

继续阅读

2016总结

这篇早早的开始写,因为我担心到31号,我还是什么都没有写。

今年是重要的一年。

在这一年,我大学毕业了;

在这一年,我开始研究生生涯;

在这一年,我第一次实习,体验到了工作的感觉;

在这一年,我拿到3个MOOC的证书;

在这一年,我第一次接触到了计算机视觉、机器学习,我为之着迷;

在这一年,我先拿到了5k+15k的奖学金;

在这一年,我以每月工资的形式拿到了生活补贴,虽然只有500.

在这一年,我又选择重新开始wordpress!

……

在这一年,还有很多事,有好的有坏的。每次站在当下总觉得过去的我很不成熟。就好像现在回想起过去,总结过去,就觉得自己很天真;将来某一天,看现在的我也一定是幼稚的。

继续阅读

如何理解拉普拉斯变换(Laplace transform)

最近在复习现代信号处理。于是自己又翻出以前的书看了看,发现对拉式变换又有了新的理解。于是把新的体会写下来。


 

要理解Laplace变换首先要明白什么是傅里叶变换。傅里叶变换的思想就是用一些列复指数周期函数进行线性组合来表示另一个函数(信号)。而我们选的这些基函数就是线性时不变系统的特征函数(eigenfunctions)。

而Laplace transform就是Fourier transform的一般化,Z变换是则对应的是离散时间。因此相比于傅里叶变换,拉氏变换少了些约束条件。因此能进行拉氏变换的信号类型就比傅里叶变换多。拉氏变换和Z变换都具有许多傅里叶变换的性质。

  继续阅读

抱歉在此留言的各位游客

之前在网友的提醒下,我发现wordpress的原生评论系统,不能够自动发送评论回复通知邮件。于是我在网上搜索了好久,找到StCR的插件,配合WP Email SMTP插件最终实现评论回复邮件通知。

但这种解决方案却出现了邮件内容错发,重复发送,不够智能的问题。

email

由于最近也没时间折腾,所以只能暂时将就~给你们的邮箱造成垃圾表示十分sorry~

PS:此篇以日志的形式发表,尝试此种模式~(*^__^*) ……

PSS:算了,好丑

Muggle

2016-12-04

不知道写点什么。2016马上就有过去了。已经进入期末考状态。计划这学期完成的项目看样子是完成不了了。不要急躁~~年末发一篇总结。试试wordpress的状态~

如何理解四个基本子空间

Four Fundamental Matrix Spaces

  1. Row space of A
  2. Column space of A
  3. Nullspace of A
  4. Nullspace of A’

A system of linear equations Ax=b is consistent if and only if b is in the column space of A.

We already known that elementary row operations do not change the row space of a matrix.

And elementary row operations do not change the nullspace of matrix.

However this result dost not apply to the column space. Therefore only its row space is preserved under elementary operations.

If a matrix R is in row-echelon form then:

  1. The row vectors with the leading 1’s form a basis for the row space of R.
  2. The column vector with the leading 1’s of the row vectors form a basis for the column space.

Therefor we put it in row-echelon form and extract the row vectors with a leading 1 to find a basis for the row space of a matrix.

继续阅读

Verilog一段错误代码分析

reg [3:0] Count_EN;
localparam PWen=4'd12;
always@(posedge CLK or negedge RST)
begin
  if(!RST)
    Count_EN<=0;
  else if(Count_EN==PWen)
    Count_EN<=0;
  else
    Count_EN<=Count_EN+1'b1;
end

此电路存在一个问题即:

Count_EN没有初始化值。

也就是说:当RST从一开始的时候就是1的话,即不满足条件一,Count_EN<=0不执行。那么Count_EN将一直处于不定态。于是else语句的加1操作相当于在一个不定态加1,得出的结果自然还是不定态。所以电路最终不能实现计数功能!

从仿真结果看:

counter_en_x

继续阅读

学习笔记之:HDL的优缺点

HDL具有通用性并且允许对电路的实现进项各种各样的控制。但即是优点也是缺点。

优点是:开发者可以针对硬件进行针对性的优化设计。但这也带来了缺点,即是:开发者必须深入到每一个细节进行精细的控制,包括数据和流程控制。因此对于复杂算法的编程相当困难。

为了解决上面的缺点,于是对高级语言,尤其是C语言进行硬件综合方面进行了相当多的研究。但硬件本身是并行的,每一步或者每一个运算都有独立的硬件执行。相比之下,软件通过重复使用CPU进行运算,使之本质上是串行的。这也是HDL描述电路时,与编程思维不同的原因。

所以时刻牢记FPGA开发属于硬件设计工作是十分重要的。进行硬件设计与进行软件设计需要不同的能力。即使是基于C语言的来描述设计,时刻牢记正在构建或者算法本身所暗指的结构也是非常重要的。并不是所有的软件算法都可以很好的映射到硬件上。例如,除非很好的保持上下文内容并将之调用,否则递归就不能被很好的映射到硬件上。因此这项工作需要面向硬件的思维模式。