Getting Started with OpenROAD (Part 2)

In these posts, I give a hands-on tutorial on using the OpenROAD application.

In the previous post, I have given a brief introduction on physical design and the steps needed to manufacture a hardware circuit. In this post, I will showcase the use of OpenROAD tools to perform the tasks discussed in the physical design process.

Prerequisites

Machine specs

To follow up with this tutorial, we recommend the use of a machine with 4GB+ of RAM to build and run the tools. However, if you are using big designs, more memory is required for the tools to perform their computations in a timely manner.

Getting Started with OpenROAD (Part 1)

In these posts, I give a hands-on tutorial on using the OpenROAD application.

In digital design, a circuit is described in a hardware description language (e.g. Verilog) and the goal is to manufacture it. To get the actual layout of the circuit that is manufacturable, it needs to pass through a number of steps before handing it over to a fabrication lab. In this post, I briefly give an overview of the steps and show how to perform them using open-source tools in OpenROAD.

Website: https://theopenroadproject.org/

GitHub: https://github.com/The-OpenROAD-Project

Twitter: https://twitter.com/OpenROAD_EDA

Installing Jenkins on Google Cloud Platform

In this post, I explain how to correctly set up a production-ready FREE Jenkins installation on Google Cloud Platform.

Continuous Integration (CI) proved to be of extreme importance to developer productivity. Implementing a CI pipeline sets the framework for code contributors to make sure their new additions/deletions improve the code base and don’t fall back to a non-ending journey of debugging. When it comes to implementing the pipeline, there are many cloud-based tools that can make this automation easier. For example, CircleCI, Travis CI, GitLab CI and the newly-introduced (at the time of writing) GitHub Actions. However, there are some cases where a project needs to self-host its automation server, and this is where Jenkins comes as a well-developed and well-maintained automation server.

In this post, I show how to correctly set up a prodcution-level master Jenkins server. This demo is implemented on Google Cloud Platform as it offers unlimited free (forever or until further notification) Compute Engine instance. It is a small instance (F-1 micro), but should be fine for small tasks. If you have builds that take longer times, or requires a large amount of memory, you should start a bigger server on any cloud provider. Also, we will use Debian GNU/Linux 9 as the OS on whichever instance you choose.

Caching Builds with Docker Build Branching

This post describes a technical failure story and gives reasons why it failed. I was trying to use a Docker environment to build a C++ project and cache the build artifacts to not build them again if they are not changed (utilizing Makefiles). This post gives the context, my approach and where it failed.

GitHub: https://github.com/abdelrahmanhosny/yosys

Description: Yosys is an open-source Logic Synthesis tool. It takes a circuit design written in Register-Transfer-Level (RTL) and synthesize it to produce a netlist ready for placement and routing. The project is written in C++. The tool is used in an end-to-end silicon compilation flow, called OpenROAD. The complete flow unifies a build platform to use CentOS. Therefore, it was ideal to introduce a Docker build for it to ensure portability.

International Students - Understand USA Tax Jargon

As a new international student arriving in the US ~4 years ago, I was puzzled by all-things tax-related, especially that I arrived in the Spring semester (tax season). Why is it so complicated?

Today, I was asked by a friend who is a new comer to a graduate-level program: Can you give me any guidance about taxes? Do we have any sort of treaties for reduction, or how did you manage taxes here? What should I expect to pay in general?

Rephrasing his question, What is the deal with all this tax bullshit they told us about in the student orientation?

So, I replied to his email and my reply looked so long that I thought it would benefit some confused new comer out there. While this is not a financial advice, I just describe what the terms you will hear/read everywhere mean.

TL;DR

Don’t get scared and don’t worry about taxes. You will know when it is time to take action.

Some Types of Taxes

If you are coming from a country that didn’t require you to sort out your taxes (just like my country - Egypt), you will most probably be confused similar to how I was in my first few days in the US. You go to a grocery store to buy something, and at the cashier, you find yourself paying a little bit more than the price tag on the item. Welcome to Sales Taxes.

Pagination