chipressian
-
RTL Implementations of 3 Must Know Encoding Techniques
There are quite a few encoding techniques used in modern ASIC design. In this post, we will cover RTL implementations of 3 must know encoding techniques. Binary / 1-Hot Encoding To implement binary to 1-hot encoding, using 3-bit binary number for example: It is a…
-
2 Version Control Tools in ASIC Design Industry: Git & Perforce
Version control tools are critical for large projects such as ASIC / SOC developments and they enable cross functional team collaborations. The version control tools maintain a record of every change complete with authorship, timestamp, and many other details. ASIC / SOC engineers must be…
-
Design a sync FIFO using single-port SRAMs
In our 1st book in series “Crack the Hardware Interview”, we discussed how to design a sync FIFO using a dual-port SRAM. Assuming the same size of storage, single-port SRAMs typically come with a smaller area than dual-port SRAMs. Therefore, using single-port SRAMs as sync…
-
How to implement hardware for array sorting in ascending order (III) – Using Linear Algebra?
In a previous post, we discussed one possible array sort solution without comparators. There are more comparison-free array sorting implementations available. In paper “An Efficient O(N) Comparison-Free Sorting Algorithm”, Saleh Abel-Hafeez and Ann Gordon-Ross proposed a new sorting algorithm, targeted for custom, IC-designed applications, such…
-
How to implement hardware for array sorting in ascending order (II) – Without Comparator?
In a previous post, we discussed hardware implementation for array sorting using comparators. However, it is also possible to sort arrays without comparators. Surajeet Ghosh, Shaon Dasgupta and Sanchita Saha Ray presented a novel solution in their paper “A Comparison-Free Hardware Sorting Engine”. We will…
-
How to implement hardware for array sorting in ascending order (I) – With Comparator?
Implementing hardware based array sorting is frequently asked when interviewing with high frequency trading companies. There are quite a few software based sorting algorithms that hardware implementation can leverage. If interested, you can go to this site and get a visual idea how each sorting…
-
How to “evaluate” the hiring manager during an interview?
Since the hiring manager has a direct impact on your future career growth in the company, it is important for you to evaluate whether you would like to work with the hiring manager in the future. The most effective approach is to get the opinions…
-
Design a DDR Memory Controller (VI) – DRAM hierarchy & DDR Address Decoding
A typical DRAM hierarchy looks like this: It is possible that a particular DRAM product does not include one or more hierarchies listed above. For example, DIMM was commonly seen in desktops and servers, not in smart phones or watches; Bank Group (BG) was introduced…
-
How to quickly learn scripting languages for ASIC design interviews?
In ASIC design and implementation flows, Tcl and Python are the 2 most widely used scripting languages: Therefore, it is important to master these 2 scripting languages for ASIC design interview preparation. We recommend the following 2 books if you want to learn Tcl and…
-
A Must Read List of Papers for ASIC Design Interviews
Yet Another Latch and Gotchas Paper by Don Mills This paper discusses several SystemVerilog coding topics that can lead to inadvertent design bugs, including casex / casez expressions and unique / priority case statements. It is a recommended reading before using these SystemVerilog new features.…
Read Our Books for Free with Kindle Unlimited
Our books are available on Kindle Unlimited for free. Plus, you get unlimited access to hundreds of other books for preparing hardware interviews, including our recommended reading list
* Chipress participates in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to Amazon.com
Subscribe
Enter your email to get updates from us. You might need to check the spam folder for the confirmation email.











