Categories
Computer Programming Computing Tutorials

⨘ } clearcase version control useful commands

Set alias alias ct /usr/atria/bin/cleartool Version ct -ver List vob ct lsvob List views ct lsview ct lsview view-tag Create a tag ct mktag -view -tag tag-name Set a view ct setview view-name Print current view ct pwv List history ct lshistory file-name List private files ct lsprivate List checkout files ct lsco -r -l […]

 193 total views

Categories
code Computer Programming Computing Tutorials

⨘ } vi / vim / gvim editor useful commands

Some common settings you may want to keep in .vimrc file set number set backspace=indent,eol,start set hlsearch set shiftwidth=3 set tabstop=3  213 total views

 213 total views

Categories
code Computer Programming Computing Tutorials

⨘ } Perl script for extracting pattern from file

#!/usr/bin/perl use strict; use warnings; open my $FH, ‘<‘, $ARGV[1] or die “Could not open file: $ARGV[1] $!\n”; open my $EXT_FH, ‘>’, $ARGV[2] or die “Could not open file: $ARGV[2] $!\n”; while (my $line = <$FH>){ if ($line =~ /cabist|tap|fscan|fbscan|dangle) print $EXT_FH $line; } close $FH; close $EXT_FH;  156 total views

 156 total views

Categories
code Computer Programming Computing Tutorials

⨘ } git version control useful commands

1. clone from repository git clone $GIT_REPOS/ip cloned-ip where: $GIT_REPOS is path to git repository if you like to have little fancy to organize cloned versions with dates, i prefer this way: git clone $GIT_REPOS/ip ip-`date +%Y%b%d-%H%M` also you can further use alias to have this command as: alias hrclone “$GIT_REPOS/ip ip-hr-‘date +%Y%b%d-%H%M’” 2. list […]

 264 total views

Categories
code Computer Programming Computing Tutorials

⨘ } Linux / Unix useful commands

1. compress and archive the directory / folder tar -zcvf /home/folder.tar.gz /home/folder where: z: compress archive using gzip program c: create archive on linux v: verbose, show progress on screen f: archive file name 2. secure copy from remote server to local scp user_name@ip_address:/home/folder/file /local_dir/copied_files/ 3. secure copy from local to remote server scp /local_dir/file […]

 262 total views

Categories
code Computer Programming Computing Tutorials

⨘ } Perl script to make recursive folder structure based on excel spreadsheet information

Below a simple perl script to make directory folder structure which may be helpful for you if you need to deal with thousands of folders. Example: folder_structure.csv (you may extract csv fromat from excel sheet). We need to make folder structure as continent folder contains regions, regions contains countries, each country contains states etc. ASIA,SOUTH […]

 278 total views

Categories
Computing VLSI

⨘ } VLSI } 20 } CMOS Interconnects }

Wire connecting the devices (nmos, pmos) are normally referred to as interconnects. Interconnects are very important, almost 70 percent chip area is consumed by interconnects. Interconnects increase circuit delays due to resistance and capacitances associated with them. Coupling capacitances induces crosstalk delay effects. Long wires induces inductive coupling due to inductance associated with them. Electric […]

 854 total views

Categories
Computing VLSI

⨘ } VLSI } 19 } System Verilog } Assertions } Async Interfaces } Protocol Verification }

We discuss assertions for asynchronous interfaces, how asynchronous master-slave protocol assertions can be written, debugged and complex protocols can be verified. We discuss following topics: 1. Master asserts request signal to slave indicating communication initiation, and request signal should get asserted only after N number of clock cycles data signal is stable. 2. Slave’s grant […]

 1,332 total views

Categories
Computing Tutorials VLSI

⨘ } VLSI } 18 } Mentor’s Questa CDC Analysis } 0in }

Siemens / Mentor’s Questa 0-in clock domain crossing (CDC) solution – how to use Questa CDC tool, what are different clock domain crossing issues, different modes of operation of the tool, how to run the tool and generate CDC reports on full chip. Various aspects are discussed, e.g. what are common kinds of CDC violations, […]

 3,826 total views

Categories
Computing VLSI

⨘ } VLSI } 017 } CMOS Power Consumption }

CMOS power and energy concepts, power analysis during chip design flow is discussed. AC and DC power are discussed. Different power components of PMOS and NMOS dynamic and static power are discussed. Static and Dynamic power equations are discussed. A brief overview of Apache Power Artist EDA power analysis tool is discussed. Dynamic power in […]

 3,374 total views

Categories
Computing VLSI

⨘ } VLSI } 016 } Do You Write a Good RTL Code }

Important concepts for a good RTL design, blocking, non-blocking type of statements in verilog, multiple-drivers, assertions, fsm-deadlock, and in general good digital design practices are discussed. LEPROF/1LEPROF/LEPROFESSEUR  3,278 total views

 3,278 total views

Categories
Computing VLSI

VLSI } 015 } Static Timing Analysis

This lecture discuss static timing analysis concepts. What are different paths, different kinds of checks, e.g. max type, min type timing analysis tool like prime time from synopsys does. How the setup and hold checks are performed, how to analyzed the timing report, how to fix the setup and hold violations are discussed. The need […]

 3,930 total views

Categories
Computing VLSI

VLSI } 014 } Latch-up & CMOS Technologies }

Latch-up phenomenon in CMOS circuits – What is latch-up, what are typical methods to mitigate latch-up and layout changes for conventional bulk silicon technology. A discussion on other technology – SOI versus bulk silicon is presented.  5,056 total views

 5,056 total views

Categories
Computing VLSI

VLSI } 013 } Floor-planning tips }

This lecture discusses some of the SoC floor-planning challenges and tips. A good floor-plan is the key to quality placement results. These are NP-hard problems which EDA tool have to deal with. A good initial floor-plan can save lot of physical design issues later in the design phase. It is very important to have a […]

 3,653 total views

Categories
Computing VLSI

VLSI } 012 } Metastability }

This lecture discusses concept of metastability. Synchronous designs suffer from this inherent problem associated with flip-flops, latches in the design. How to conceptualize metastability. Water flow analogy is very helpful when designing circuits at transistors level. What is MTBF (mean time between failures) and how we can develop MTBF equation. What are different recommendations for […]

 4,878 total views

Categories
Computing VLSI

VLSI } 011 } Clock Domain Crossing } Multi Voltage Domains }

This lecture discusses multi voltage domain crossings. Now a days integrated circuits are no longer simple circuits running on one or two static voltage domains but having dynamically switched multi voltage domains. Signals pass through these voltage domains. There can exists crossings between different clock domains having same voltage domain or different clock domains and […]

 4,463 total views

Categories
Algorithms Computing

Algorithms } 045 } Ant Colony Optimization } Technique

This lecture extends further the discussion on any colony technique. Ants can be considered artificial agents which work together and improve candidate solution in each iteration. A simple ant colony algorithm is discussed. Individual ants may not be that smart but when they work in group, they are one of the smartest creatures. How ant […]

 3,699 total views

Categories
Computing VLSI

VLSI } 010 } Reset Domain Crossing (RDC) }

This lecture discusses reset domain crossing (RDC) digital design techniques. Reset trees are similar to clock trees and resets crossings must be carefully verified. It needs to plan early in the design phase for clock and reset crossing verification which is quite essential. The bugs which can be due to reset domain crossings or clock […]

 5,932 total views

Categories
Computing VLSI

VLSI } 009 } Clock Domain Crossings } FIFO }

This lecture extends the discussion on clock domain crossings. In this lecture design techniques for multi-bit clock crossings have been discussed. One can classify CDC signals in two groups broadly: control signals and data signals. For single bit control signals double flop synchronizing circuits or special library sync cells can be used safely. This becomes […]

 4,911 total views

Categories
Algorithms Computing

Algorithms } 044 } Ant Colony Optimization } Introduction }

This lecture introduces the concept of ant colony. Individual ants may not be that smart but when they work in group, they are one of the smartest creatures. How ant find the food quickly and slowly optimize their route to shortest route from source to their home, the same concept we can apply to many […]

 4,254 total views

Categories
Computer Programming Computing Scientific Computing Tutorials

Turorials } Matlab | Octave } quick overview }

This lecture provides a quick overview for Matlab or Octave. Matlab and Octave both are software tools for scientific computations. Matlab is proprietary software package and Octave is open source which can be downloaded from gnu open source project page. Some syntax of Octave may not be compatible with Matlab but mostly matlab code is […]

 5,646 total views

Categories
Computing Software Engineering

Software Engineering } 007 } Agile versus Spiral }

This lecture discusses key ideas of agile framework and its differences with traditional waterfall and spiral software development methodologies. Waterfall model is a very early model of software development. As software systems became complex, it needed new techniques to manage software development process. In waterfall model cost dynamically increase if we try to implement design […]

 4,286 total views

Categories
Computing VLSI

VLSI } 008 } Antenna Effects }

This lecture discusses concept of antenna effect in vlsi physical design. A typical chip manufacturing steps discussed with the design guidelines to avoid antenna effects in vlsi design. Antenna effect can damage the integrated circuit permanently. Antenna effects are caused by plasma etching process. In simple terms antenna are floating charge builds up on metal […]

 5,688 total views

Categories
Algorithms Computing

Algorithms } 043 } Genetic Algorithms }

This lecture discusses basic principles of Genetic Algorithms, a class of evolutionary computational algorithms. Genetic algorithms are based on the concept of biological evolution. As in biological science there is concept of how species are born due to union of male and female type of species and new generation take place of older generation, in […]

 4,382 total views

Categories
Algorithms Computing Scientific Computing

Algorithms } 042 } Monte-Carlo Methods }

This lecture discusses basic principles of Monte-Carlo methods, a class of computational algorithms. A simple example of estimating value of pi is discussed. Monte-carlo techniques are widely used in the areas of modern physics, nuclear simulation, astro-physics and many other areas of science and engineering where direct computation or analytical solutions are impossible or too […]

 4,459 total views,  2 views today

Categories
Computing VLSI

VLSI } 007 } Logic Gates using Multiplexers }

This lecture discusses multiplexers and logic gates. How to design logic gates using 2:1 multiplexers? Multiplexers are considered universal logic. One can design any logic gate using multiplexers and in turn any logic circuit. Mux-based FPGAS use these techniques to create logic gates using multiplexers for logic implementation. [ ►Subscribe ] Leprofesseur } on YouTube. […]

 4,567 total views

Categories
Algorithms Computing

Algorithms } 04 } Bags, Queues, and Stacks }

This lecture covers very basic concepts about bags, stacks and queues in nutshell. You may have known these concepts already. Just a note that when I discuss stacks I was explaining compiler example for stack, it just for example a partial stack. More detailed stack implementation as compiler does is not explained here. Also, I […]

 5,121 total views

Categories
Algorithms Computing

Algorithms } 040 } Computational Geometry }

This lecture introduces computational geometry and basic algorithms for finding line segments. Computational geometry has applications in many areas: robotics, forestry, medical imaging, metallurgy, VLSI design, textile layout, manufacturing, computer graphics, robotics, computer-aided design, molecular modeling and many other modern science areas which one needs to deal with geometric objects and geometric problems. Typical inputs […]

 4,241 total views

Categories
Algorithms Computing

Algorithms } 039 } String Matching } Knuth-Morris-Pratt }

This lecture discusses Knuth-Morris-Pratt string matching algorithm. Click above and [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up ? Sincerely, H.  6,073 total views

 6,073 total views

Categories
Algorithms Computing

Algorithms } 038 } String Matching } Finite Automata }

This lecture discusses string matching problem and finite automation based string matcher algorithm. Click above and [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  5,502 total views

 5,502 total views

Categories
Algorithms Computing

Algorithms } 037 } String Matching }

This lecture discusses string matching problem and brute force naive string matcher algorithm. Click above and [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  5,212 total views

 5,212 total views

Categories
Computing Tutorials VLSI

Tutorials } System Verilog } Assertions }

This lecture discusses assertions in system verilog. Immediate, concurrent assertions with multiple clock domains are discussed. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  5,465 total views

 5,465 total views

Categories
Computing VLSI

VLSI } 006 } Timing }

This lecture discusses timing in digital circuits. It is said that “Timing is everything”. If someone does not arrive on time at a meeting of a party it is considered bad effect. In similar way timing is the most important in digital circuits. Sequential digital techniques are dependent on correct time accurate behavior of design […]

 3,773 total views

Categories
Algorithms Computing

Algorithms } 036 } Greatest Common Divisor (GCD) }

This lecture discusses Euclid’s algorithm for finding greatest common divisor. Extended Euclid’s algorithm has also been discussed. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  5,377 total views

 5,377 total views

Categories
Algorithms Computing

Algorithms } 035 } Linear Programming } Simplex Algorithm }

This lecture discusses optimization problems, slack representation and Simplex algorithm for solving linear programming problems. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  4,547 total views

 4,547 total views

Categories
Algorithms Computing

Algorithms } 034 } Solving Linear Equations }

This lecture discusses LPU decomposition method for solving linear equations. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  4,963 total views

 4,963 total views

Categories
Computer Programming Computing Tutorials

Tutorials } vi Editor: quick guide }

This lecture provides a quick overview of vi editor.  5,922 total views

 5,922 total views

Categories
Algorithms Computing

Algorithms } 033 } Parallel Algorithms }

This lecture discusses introduction to parallel algorithms with multi-threading. Fibonacci series example is discussed. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  7,974 total views

 7,974 total views

Categories
Algorithms Computing

Algorithms } 032 } Graphs } Flow Networks } Push-Relabel }

This lecture discusses Push-Relabel approach for solving flow network problems. Generic flow-network algorithm has been discussed. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.R. ERRATA: Nicklas Dohrn pointed this error: “Hey there, great video and one of the only videos that […]

 6,695 total views

Categories
Algorithms Computing

Algorithms } 031 } Graphs } Flow Networks } Edmonds-Karp }

This lecture discusses basic difference between Edmonds-Karp and Ford-Fulkerson’s algorithm. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  4,959 total views

 4,959 total views

Categories
Algorithms Computing

Algorithms } 030 } Graphs } Flow Networks } Ford-Fulkerson }

This lecture discusses concept of flow networks, flow, residual graph, and how to find maximum flow value in a flow network. The Ford-Fulkerson’s algorithm is discussed for finding maximum flow in a given flow network. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 […]

 5,314 total views

Categories
Algorithms Computing

Algorithms } 029 } Graphs } Dijkstra’s algorithm }

This algorithm discusses Dijkstra’s algorithm for single-source shortest path problem. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Do not forget to give thumbs-up 🙂 Sincerely, H.  7,273 total views

 7,273 total views

Categories
Algorithms Computing

Algorithms } 028 } Graphs } The Bellman-Ford Algorithm }

This lecture discusses the Bellman-Ford algorithm for finding single source shortest path. [ ►Subscribe ] Leprofesseur } on YouTube. We appreciate your feedback and support. Sincerely, H.  7,558 total views

 7,558 total views