반응형

분류 전체보기 78

Hspice manual - Voltage source, Passive element 등

Hspice simulation 은 몇 번 하다보면 금방 익숙해지게 됩니다.하지만 워낙 기능이 많은 tool 이라 새로운 기능을 사용하기 위해서는 manual 을 찾아봐야 합니다.인터넷에 배포되어 있는 Hspice manual 중 하나를 블로그에 올리겠습니다.해당 manual 에는 Input netlist guideline, Passive element 와 Voltage source 등을 어떻게 사용해야하는 지 등이 포함되어 있습니다. 문제가 될 시 삭제하겠으며, 보다 더 정확하고 최신 manual 은 Hspice 홈페이지에 있습니다.

Hspice 에서 transient simulation 하기

Hspice 에서는 여러가지 simulation 을 할 수 있는데 오늘은 그 중 가장 많이 쓰이는 transient simulation 하는 법을 간단하게 다뤄보겠습니다. .tran (time step) (end time) 먼저 간단하게 transient simulation 을 돌리기 위해서는 2가지 변수가 일반적으로 필요합니다. 바로 time step 과 end time 이죠.Time step 은 몇 초를 최소 단위로 볼 것인지를 정하는 것이고End time 은 simulation 이 끝나는 시간을 의미합니다.Hspice transient sim 은 일반적으로 0초부터 시작하는 걸 가정합니다. .tran 100ps 100ns 위와 같이 simulation 을 돌리면 100ps 의 time step 을 ..

Current biasing : Current mirror 원리와 사용 이유

제 블로그에서 이전에도 Current mirror 에 대해 다루긴 했었지만, 오늘은 Current mirror 가 실제로 어떻게 사용되는지에 대해 다뤄보겠습니다. 기존 글을 보고 Current mirror 의 원리와 설계 방법 Cascode 등에 대해 다뤘으나 해당 글만 보고는 왜 Current mirror 를 사용해야 하는 지에 대한 궁금증은 풀리지 않을 수 있습니다.  Current Mirror 원리 먼저 Current mirror 의 원리에 대해 다시 한 번 다뤄보죠. Current mirror 는 MOSFET 이 특정 고정된 전압의 Vgs 에서 고정된 current 를 흐르게 하는 원리입니다. Ideal 한 mosfet 에서는 Vgs 와 Vth 가 정해진 순간, MOSFET 의 parameter ..

회로 해석 모델 : Lumped model 과 Distributed model

오늘은 회로 해석 방법 중에 Distributed model 과 Lumped model 에 대해 알아보겠습니다. 각각은 회로에서 Resistor 와 Cap, Inductor 를 해석하는데 주로 갈리는 model 입니다. 먼저 각각의 model 을 비교해보기 위해 간단한 case를 예로 들어보겠습니다. 위와 같이 Vin 의 node 와 Vout 의 node 2개가 있습니다. 두 node 는 Metal-routing 으로 이어져있다고 해봅시다. 이 Metal routing 은 ideal 하지 않기 때문에 parasitic resistance 와 parasitic capacitacne 가 있는데요. 이 metal routing 을 각각 distributed model 과 lumped model 로 해석해보겠습..

Serializing & Parallelizing : MUX와 DEMUX의 개념과 역할

오늘은 디지털 회로의 가장 중요한 회로 중 하나인 MUX 와 DEMUX 에 대해 다뤄보겠습니다. MUX 는 multiplexer, DEMUX 는 demultiplexer 의 줄임말입니다. 각각 신호를 더 작은 수의 신호로 압축시켜 보내거나 혹은 더 많은 수의 신호로 풀어서 보내는 역할을 하죠. 그럼 먼저 MUX 에 대해 보겠습니다.  MUX 구조 간단한 MUX 의 block diagram 을 보죠. 위와 같이 input 신호는 a,b,c,d 로 총 4 개 그리고 output 신호는 q 로 1개입니다. 4개의 신호를 1개의 신호로 압축시켜 보냈으니 MUX 구조입니다. (4-to-1 mux 구조라고도 하죠) 이 때 이 MUX 는 총 2개의 select 신호를 통해 어떤 input 을 output 으로 내보낼..

LFSR 의 개념과 원리 (Linear Feedback Shift Register)

오늘은 디지털 회로 중 하나인 LFSR, Linear Feedback Shift Register 에 대해 다뤄보겠습니다. LFSR 은 flip-flop 들을 이용해 random number 를 생성하는 데 쓰이는 디지털 논리 회로입니다. 즉 난수 생성을 위한 회로이죠. 간단한 회로 예부터 아래에서 살펴보도록 하죠.  위는 xor 과 4개의 flip-flop 을 이용해 만든 간단한 4bit 의 LFSR 입니다. 이전 값이 어떤 값이었는지에 따라 다음 값이 결정되는 구조를 볼 수 있습니다. 예를 들어, 초깃값이 1000 값이면 논리 조합에 의해 그 다음 값은 0100 이 나오게 되는 일종의 deterministic 한 구조이죠. 결국 LFSR 은 진정한 의미의 random number gernerator 는..

vi 명령어) Linux 에서 여러 파일 내 텍스트를 일괄적으로 바꾸는 법

Linux 환경에서 여러 simulation 파일을 만들고 돌리다 보면 여러개의 파일에서 텍스트를 변경해야할 때가 있습니다. 똑같은 인풋 환경과 시뮬레이션 환경에서 특정 회로만 바꾸려고 할 수도 있고, 혹은 여러 개의 시뮬레이션 파일에서 vdd, temperature 등 특정 환경만 바꾸려고 할때죠. 이 때 여러개의 파일을 하나씩 열어서 바꾸다 보면 시간이 많이 소요될 뿐만 아니라, 빼먹게 되는 human error 가 발생할 수도 있죠.   sed -i 's/(바꾸고 싶은 단어)/(바꾸려는 단어)/g' (파일이름) 여러 개의 파일 내에서 텍스트를 바꾸기 위해 사용하는 명령어로는 sed 구문이 있습니다. 바로 위와 같은 구문을 사용하면 되죠. 아래에서 예를 들어보겠습니다. **a.sp.param vdd=..

Hspice simulation : hspice 에서 ideal delay 만드는 방법

오늘은 hspice tool 에서 ideal delay 를 만드는 방법에 대해 알아보겠습니다. Virtuoso 등의 tool 에서는 ideal delay 를 쉽게, 그리고 직관적으로 만들 수 있는 데 반해, hspice 에서는 ideal delay 를 만드는 방법에 대해 쉽게 알 수 없는데요. hspice 에서도 vcvs 를 사용해 간단하게 ideal delay 를 만들 수 있습니다.  먼저 ideal delay 를 만들기 위해 vcvs 에 대해 알아봅시다. VCVS 는 Voltage controlled voltage sourcde 라고 합니다. 위에 보이는 것처럼 특정 voltage input 에 대해 이에 특정 gain 을 곱한 전압을 output 으로 내보내는 것이 일반적으로 vcvs 이죠. vcv..

Coupling noise : Positive & Negative coupling 과 Signal shielding

오늘은 디지털 회로에서 signaling 을 어떻게 더 좋게 할 수 있는지에 대해 다뤄보겠습니다. 회로에서는 아날로그 회로인지, 디지털 회로인지에 상관없이 signal 을 망가지지 않고 얼마나 잘 전달하는지가 정말 중요합니다. 이는 첨단공정이 점점 더 작아지고 있고, 회로의 speed 가 점점 더 빨라지면서 중요성이 날로 증가하고 있죠.  먼저 coupling noise 에 대해 알아봅시다. 회로에서 여러 driver 가 위와 같이 위치해있다고 생각해봅시다. 여러 개의 signal 이 각각 buffer line 을 타고 receiver로 이동하죠. 이 때 signal 이 전달되는 metal line 에는 parasitic 저항과 parasitic cap 이 존재하게 됩니다. 이 때 생기는 parasiti..

Latch, Flip-flop 회로와 TSPC(True single phase clock) 회로

이번엔 digital circuit 에서 가장 중요한 회로 요소 들인 latch 와 flip-flop 에 대해 다뤄보겠습니다. 0과 1의 신호만 존재하는 digital 회로에서 synchronize 해서 신호를 보내는 것은 정말 중요합니다. 이 때 sync 의 기준이 되는 것은 clk 신호이고 이 clk 신호는 보통 latch 나 flip-flop 을 이용해 signal 을 synchronize 시키죠. 먼저 latch 부터 보겠습니다. Latch 는 다들 알다시피 level -triggered 회로 입니다. clk 신호가 0 인지 혹은 1인지에 따라서 현재 신호를 저장할지, 아니면 신호를 무시할지를 결정하죠. 가장 기본적이면서도 많이 쓰이는 회로가 바로 위에 보이는 회로입니다. 2개의 transmiss..

반응형