Linux Commands Cheat Sheet

Linux, often associated with being a complex operating system primarily used by developers, may not necessarily fit that description entirely. While it can initially appear challenging for beginners, once you immerse yourself in the Linux world, you may find it difficult to return to your previous Windows systems. The power of Linux commands in controlling your PC, coupled with their clean user interface, can make it hard to switch back to older operating systems. If you’re a developer, you can likely relate to the advantages and appeal of Linux.

To support developers and beginners alike, we have created a comprehensive Linux/Unix command line cheat sheet. This cheat sheet covers all the basic and advanced commands, including file and directory commands, file permission commands, file compression and archiving, process management, system information, networking, and more with proper examples and descriptions. In addition to that we provide all the most used Linux Shortcut which includes Bash shortcuts, Nano shortcuts, VI & Vim Shortcuts Commands. It provides a solid foundation on Linux OS commands, as well as insights into practical applications.

By the end of this cheat sheet, you will have a basic understanding of Linux/Unix Commands and how it makes development easy for developers.

Read More

Input Special Characters in VIM

Special characters or symbols are called digraphs in VIM. But how can we input digraphs in VIM? In “insert” mode, press C-k and followed by , which is the digraph coded-key that you are going to input. For examples:
C-k oo • (Bullet)
C-k Db ◆ (Diamond)
C-k Co © (Copyright)
C-k Rg ® (Registered trademark)
C-k Pd £ (English pound)
C-k Eu € (Euro pound)
C-k Ye ¥ (Yuan)
C-k +- ± (Plus-Minus)
C-k >> » (Right double quotation)
C-k << « (Left double quotation)
C-k fS ■ (Black square)
C-k OS □ (White square)

The complete digraph coded-keys can be found by type command :dig, or :help dig for more details about digraphs.

Tmux Clipboard To/from System Clipboard

在~/.tmux.conf中开启鼠标支持:

1
set-option -g mouse on

复制: 按住shift键,然后拖动鼠标复制要选择的内容,然后按下shift+ctrl+c,复制到系统剪贴板
粘贴: 按下shift+ctrl+v 粘贴系统剪贴板中的内容到Tmux中

需要注意的是
shift+ctrl+v是在终端设置的粘贴快捷键
shift+ctrl+c是在终端设置的复制快捷键

Perl Function Strftime

在 Perl 中处理时间,很多模块,很方便,但是刚开始玩的人,可能没有发现合适的模块,所以使用起来感觉很麻烦。这里给大家推荐一下一个模块 strftime。

我们在推荐前,介绍一下 Perl 下取时间的今生前世吧。以前我想大家都是使用的 localtime 来取得当地日期时间和日期。这个函数如果在标量环境时,会以字符串的形式来传回目前的时间和日期 。默认的 localtime 的函数是以 1970 到今天的秒来做整数计算的。默认这个程序会调用 time 的函数来给它提供一个值。使用方法:

Read More

Low Power Techniques in VLSI

Design Level Strategies
Operating System Level Portioning, Power down
Software Level Regularity, locality, concurrency
Architecture Level Pipelining, Redundancy, data encoding
Circuit/Logic Level Logic style, transistor sizing, energy recovery
Technology Level Threshold reduction, multiple threshold devices
Traditional Techniques Dynamic power reduction Leakage power reduction Other power reduction techniques
Clock gating Clock gating Minimize usage of LVt Multiple oxide devices
Power gating Power efficient circuits Power gating Power efficient circuits
Variable frequency Variable frequency Back biasing Minimize capacitance by custom design
Variable voltage supply Variable voltage supply Reduce oxide thickness
Variable device threshold Voltage Islands Use FinFET

记录一次Excel在Timing Closure中的应用

本文旨在记录一次STA timing closure过程中如何利用Excel表格工具可视化的优化inter-clock skew,从而大大降低DMSA timing ECO的代价。

【Background】


这次timing closure的难点在于design有5个同步异频的clock。所谓同步异频是指这5个clock的source clock相同,但是经过了不同的clock divider, clock gating, 以及clock mux。clock structure简化为如下图所示:

  • Generated clock从PLL出来就分叉:OCV严重
  • PLL clock频率巨高:>1000MHz
  • 三个clock group两两之间都有talk:CLK0, CLK1_0/CLK1_1/CLK1_2, CLK2。

Read More