Source Follower Design

< 설계 조건 >
* VDD=1.8V, Power budget = 1.8mW    * Voltage gain = 0.9
* Min. allowable output = 0.3V(VDS2≥0.3V 일 때 M2는 saturation)
* λ = 0.1 V-1   * L = 0.5 um   * VTH = 0.4 V   *μnCox=200 uA/V2

< 설계 과정 >
① 전류 결정(I): 소비전력을 1.8mW이내로 하기 위해서 전류는 1.8mW/1.8 = 1 mA 이내의 값을 가져야 한다.
                      I = 1mA로 결정 -> Ro = 1/(λ*I) = 10 / 1 = 10㏀

② 이득에 의한 gm1, Vov1 계산
       전압이득(Av)=gmro / (2+gmro) = 0.9 -> gmro = 18 -> gm = 1.8mA/V
       Vov1 = 2I / gm1 = 2 / 1.8 = 1.111V

③ 출력 전압 결정
       MOSFET의 saturation 동작을 위해 M2의 Vds2는 Vov2(0.3V)보다 커야하고,
       M1의 Vds1은 1.111V보다 커야 한다. 따라서 Vout은 0.3V 이상 0.698V 이하의 값을 가져야 한다.
       Vout는 최대의 swing을 위해 0.5V로 지정.

④ W1, W2 계산: (계산과정 생략-MOSFET의 Early effect를 고려한 전류식에 대입) W1= 3.5848㎛, W2 = 52.91㎛

⑤ Bias 전압 Vin과 Vb 결정
       Vb는 Vov2 = 0.3V, Vth=0.4V에 의해 0.7V로 결정.
       Vin도 마찬가지로 Vov는 1.111V와 Vout(Vs1)은 0.5V, Vth=0.4V에 의해 2.041V.

< Simulation 결과 >
사용자 삽입 이미지
< DC Bias Simulation Result >

사용자 삽입 이미지
< Time Domain - 1mV Sin Input >
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by downright

2009/03/28 20:25 2009/03/28 20:25

Leave a comment
[로그인][오픈아이디란?]

5-Phase Shifter

사용자 삽입 이미지

사용자 삽입 이미지

< 간략한 설명 >
74x163을 이용하여 Master Clock Edge L->H Trigger 2번을
다시 새로운 클럭으로 생성하고, 이 클럭에 의해 74x194를 동작시킴.
(이렇게 하는 이유는 단순히 문제이기 때문에...)
그 다음부터는 5-Phase Shifter으로써 동작하며 출력파형 발생.
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by downright

2008/06/13 01:19 2008/06/13 01:19

Leave a comment
[로그인][오픈아이디란?]

Inductor와 Capacitor의 IC

Inductor와 Capacitor의 경우 Resister와 달리 전장이나 에너지를 충전하거나 방전하게 되는데,
따라서 simulation을 할 경우 조건에 따라 초기값을 지정해주는 것이 중요하다.
추가로, 직류 신호에 대해서 C는 개방, L은 단락 상태로 동작함을 생각하면 이해하기 쉽다.

먼저 라이브러리를 analog에서 "C", "L"을 이용해야 "IC(Initial condition)"을 설정할 수 있다.
C의 경우 IC 값을 설정하지 않은 경우와, 0V로 설정한 경우, 1V로 설정한 경우는 아래와 같다.

사용자 삽입 이미지
C에서와 마찬가지로 L에서도 IC 값을 설정할 수 있다. 아래는 값이 없을 때와, 0일 때, 1A일 때를 나타낸다.
초기값은 노드의 1번을 기준으로 2번을 향해 정해지는 것을 참고해야 한다.
만약 자기가 원하는 초기값의 반대 부호가 나올 경우 소자이 방향을 반대로 바꾸거나 값을 반대로 적으면 된다.

사용자 삽입 이미지

참고: http://dave.uta.edu/dillon/pspice/pspice04.htm

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by downright

2007/11/19 19:10 2007/11/19 19:10

Comments List

  1. Yk.c 2007/11/20 11:44 # M/D Reply Permalink

    아무것도모르겠어요 ㅋㅋㅋ 오랜만입니다.^^; 죄송해요 요즘시간이 없어서 자주 못들르네요..^^ 잘 지내셨어요?

    1. downright 2007/11/20 19:19 # M/D Permalink

      저도 자주 못 들어가본 것 같네요^^;;어쩌다 보니...
      그래서 일부러 왼쪽에 T-Blog도 등록해놨어요.
      쉽게 누를 수 있도록~
      저 프로그램은 전자전공 하는 분은 거의 학교 다니는 내내
      쓰는 프로그램인데요~ 아주 중요하죠!!^^

Leave a comment
[로그인][오픈아이디란?]

Step Fulse 이용

먼저 Step fulse로 동작하는 전압원, 전류원을 만들기에 앞서 전압과 전류의 특징을 살펴보는 것이 중요하다.
전압원의 경우 일정한 전압차를 만드는 역할을 하는데, 회로가 끊어지게 되면 그 전압차를 만들지 못하게 된다.
따라서 아래와 같이 회로를 개방 또는 단락을 통해 step fulse를 만들 수 있다.

사용자 삽입 이미지사용자 삽입 이미지

반면, 전류원의 경우 일정한 전류를 공급하는 역할을 하는데, 회로가 끊어지더라도 동작을 한다.
회로의 한 방향이 끊어져 있더라도 반대쪽으로 전류가 들어오거나 나가는 형태로 동작을 하게 된다.
따라서 전압원과 같은 방법으로 하게 되면 아래와 같은 결과가 나오게 된다.
분명 스위치에 의해 개방과 단락이 발생하였지만, 회로에는 계속해서 전류가 흐르고, 전압차가 있다.

사용자 삽입 이미지사용자 삽입 이미지

전류원의 경우 전압원과 달리 전류원과 병렬로 sw_tOpen 스위치를 만들어서
회로에 전류를 흐르지 않게 하였다가 지정된 시간에 회로에 전류를 흐르는 식으로 해야 한다.
아래와 같이 하게 되면 step fulse 작동하는 것을 볼 수 있다.

사용자 삽입 이미지사용자 삽입 이미지

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by downright

2007/11/18 12:32 2007/11/18 12:32

Leave a comment
[로그인][오픈아이디란?]

AC Phase 측정하는 방법

위와 같은 회로에서 phase를 측정하려면 Simulation Settigs에서 Analysis type를 AC Sweep/Noise로 설정하고
주파수의 범위를 실제 회로의 주파수를 기준으로 적당한 범위로 지정한다.
그리고 Total Points는 시작 주파수부터 끝까지 범위 내에 포인트를 얼마나 추출하는지 정하는 것이다.
포인트를 크게 잡을 수록 시간이 오래 걸리고, 그래프는 부드러운 곡선을 그린다.

사용자 삽입 이미지

Simulation Settings이 끝나면 phase 측정을 위한 marker를 지정해주면 된다.
PSpice -> Markers -> Advanced 항목에 보면 Phase of Voltage, Phase of Current가 있다.
측정하고자 하는 것이 전압의 phase인지 전류의 phase이냐에 따라 maker를 선택해서 측정하면 된다.

사용자 삽입 이미지

위 화면이 실제 시뮬레이션 결과이다, 9KHz에서부터 12KHz의 범위 내에서 전압의 phase의 변화를 보여준다.
p.s. 처음에 advanced에 있는 marker를 몰랐는데, 이 사용방법을 알려준 "승찬"에게 감사의 말을 전합니다.
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by downright

2007/11/18 03:12 2007/11/18 03:12

Leave a comment
[로그인][오픈아이디란?]

ABEL - 2x4 decoder

<ABL 코드>
module
decoder2to4
title '2 to 4 decoder abel code by changkyu'
DCODER device 'P16V8C';

"input pins
I0, I1 pin 2,3;
EN pin 4;

"output pins
Y0, Y1, Y2, Y3 pin 16,17,18,19;

"constants
X = .X.;

equations
Y0 = EN & !I0 & !I1;
Y1 = EN & !I1 & I0;
Y2 = EN & I1 & !I0;
Y3 = EN & I1 & I0;

test_vectors
([EN, I1, I0] -> [Y3, Y2, Y1, Y0])
[  0,.X.,.X.] -> [ 0,  0,  0,  0];
[  1,  0,  0] -> [ 0,  0,  0,  1];
[  1,  0,  1] -> [ 0,  0,  1,  0];
[  1,  1,  0] -> [ 0,  1,  0,  0];
[  1,  1,  1] -> [ 1,  0,  0,  0];

end decoder2to4
<DOC 출력>
ABEL(tm) Version 2.00b  -  Document Generator             15-Nov-107 01:28 PM
2 to 4 decoder abel code by changkyu
Chip diagram for Module decoder2to4

Device DCODER
                            P16V8C

                 ----------\       /----------
                 |         \     /           |
                 |          -----            |
                 |  1                    20  | Vcc            
                 |                           |
              I0 |  2                    19  | Y3             
                 |                           |
              I1 |  3                    18  | Y2             
                 |                           |
              EN |  4                    17  | Y1             
                 |                           |
                 |  5                    16  | Y0             
                 |                           |
                 |  6                    15  |                
                 |                           |
                 |  7                    14  |                
                 |                           |
                 |  8                    13  |                
                 |                           |
                 |  9                    12  |                
                 |                           |
             GND | 10                    11  |                
                 |                           |
                 |                           |
                 -----------------------------

end of module decoder2to4
크리에이티브 커먼즈 라이센스
Creative Commons License

"HDL" 카테고리의 다른 글

Posted by downright

2007/11/17 02:05 2007/11/17 02:05

Leave a comment
[로그인][오픈아이디란?]

ABEL - Hamming Code

<ABL 코드>
module
Hamming_Code

title 'Hamming code converter'

HAMCVT device 'P22V10';

 

" Input pins

I1, I2, I3             pin 2, 3, 4;

 

" Output pins

D1, D2, D3             pin 23, 22, 21;

P1, P2, P3, P4         pin 20, 19, 18, 17;

T                      pin 16;

 

" Constant definition

L,H = 0,1;

M = 0;                 "even or odd set

 

equations

D1 = I1;

D2 = I2;

D3 = I3;

P1 = I2 $ I1 $ M;      "xor 연산을 통해 1 확인

P2 = I3 $ I1 $ M;

P3 = I3 $ I2 $ M;

T = I1 $ I2 $ I3;      "입력 데이터의 even parity를 구하기 위해 사용

P4 = T $ P1 $ P2 $ P3; "T와 패티티 비트에서 even parity를 구함

 

test_vectors

([I1, I2, I3] -> [D1, D2, D3, P1, P2, P3, P4])  "I1 I2 I3의 해밍코드

[  L,  L,  L] -> [ L,  L,  L,  L,  L,  L,  L];

[  L,  L,  H] -> [ L,  L,  H,  L,  H,  H,  H];

[  L,  H,  L] -> [ L,  H,  L,  H,  L,  H,  H];

[  L,  H,  H] -> [ L,  H,  H,  H,  H,  L,  L];

[  H,  L,  L] -> [ H,  L,  L,  H,  H,  L,  H];

[  H,  L,  H] -> [ H,  L,  H,  H,  L,  H,  L];

[  H,  H,  L] -> [ H,  H,  L,  L,  H,  H,  L];

[  H,  H,  H] -> [ H,  H,  H,  L,  L,  L,  H];

 

end Hamming_Code

<컴파일 결과>
FUSEMAP ABEL-PLD(tm) 3.21

Copyright 1983-1990 Data I/O Corp. All Rights Reserved.

module Hamming_Code

_device HAMCVT  'P22V10'

 29 of 132 terms used,  8 vectors included

FUSEMAP complete.  Time: 0 seconds

 

SIMULATE ABEL-PLD(tm) 3.20

Copyright 1983-1990 Data I/O Corp. All Rights Reserved.

module Hamming_Code

_device HAMCVT  'P22V10'

........

8 out of 8 vectors passed.

SIMULATE complete. Time: 0 seconds

 

DOCUMENT ABEL-PLD(tm) 3.20

Copyright 1983-1990 Data I/O Corp. All Rights Reserved.

module Hamming_Code

_device HAMCVT

DOCUMENT complete.  Time: 0 seconds

          * 참고 사이트: http://www.seas.upenn.edu/~ese201/abel/abel_primer.html
크리에이티브 커먼즈 라이센스
Creative Commons License

"HDL" 카테고리의 다른 글

Posted by downright

2007/11/17 02:01 2007/11/17 02:01

Leave a comment
[로그인][오픈아이디란?]