기본 요소들만 간략히 표현한 op-amp

 

op-amp 응용의 기본인 ideal op-amp에 대한 정리

 

- What is op-amp?

Why amplifier? Op-amp는 voltage amplifier로 동작한다.

Why oprational? Op-amp의 입출력에 저항, 커패시터 등의 소자로 feedback을 구성하여 다양항 operation을 구현 할 수 있다.

 

- Ideal op-amp의 특성

1. Infinite open-loop gain G ( = Vout/Vin )

2-1. Infinite input impedance Rin

2-2. Zero input current

3. Zero output impedance Rout

※ 생략된 기타 ideal 특성들: bandwidth, phase shift, slew rate, CMRR 등

 

- Ideal op-amp의 특성 분석

1. Infinite open-loop gain G ( = Vout/Vin )

Vout은 Vs+, Vs-의 범위를 벗어나지 못한다. (내부에 전압을 높혀주는 회로가 없다면 그 회로가 생성하는 전압은 기본적으로 공급 전압을 넘지 못함.)

이득 G가 무한이기 때문에 약간의 입력단 전위차(Vin)도 Vout을 Vs+ 또는 Vs-로 saturation시킨다.

2-1. Infinite input impedance Rin

입력 impedance가 유한하면 입력 전압의 phase를 shift 시키고 감쇠 시킬 수 있다.

따라서 입력 전압을 op-amp의 Vin에 그대로 전달 시키기 위해서는 입력 impedance Rin이 무한이 되어야 한다.

2-2. Zero input current

입력 impedance가 무한하므로 입력 current 또한 0이어야 한다.

3. Zero output impedance Rout

입력 impedance와 같은 맥락으로 출력 impedance가 유한하면 출력 전압의 phase를 shift 시키고 감쇠 시킬 수 있다.

 

 

입소대대 입구
입소식 장소
생활관

 

입소 당일날 와이프와 함께 센트럴 터미널에서 연무대 터미널로 향하는 버스를 타고 논산으로 내려갔다. 당일 아침 늦잠잔 탓에 미리 예매해둔 9시 10분 버스는 못 탔으나 다행히 9시 50분 버스에 자리가 있어서 출발 할 수 있었다. 12시 반쯤 연무대 터미널에 도착했던 것 같다. 버스에서 내리니 택시들이 기다리고 있었다. 택시를 타니 10분만에 육군훈련소 입소대대에 도착했다. '호국요람.' 입소대대 입구에 써 있던 글이다. 나라를 지키는 근원지 정도로 해석될 수 있을 것이다. 입소하기전 찾아봤던 많은 자료에서 언급된, 입소대대 입구에 써있는, 입소를 반기는 문구다. 퇴소한 현시점에서 이 한자어를 다시 보니 군대에서 사용되는 생소한 한자어들이 떠오른다. 교보재, 불침번, 수통, 점호.. 입소대대 입구에서 와이프와 사진을 찍고 입소식이 열리는 운동장으로 갔다. 아직 입소식까지 1시간 이상이 남은 상황이라 운동장에 사람들이 거의 없었다. 앞으로 4주간은 사회와 단절된 생활을 해야 한다고 생각하니 기분이 착잡했다. 먹고싶으면 먹고, 자고싶으면 자고, 게임하고싶으면 하고, 놀러가고싶으면 가던 생활에서 먹으라면 먹고, 자라면 자고, 훈련하라면 하고, 쉬라면 쉬는 생활을 해야겠지. 무엇보다도 가장 큰 걱정은 사회성 없는 내가, 주말이면 혼자 있는 시간을 더 좋아했던 내가 많은 동기들과 24시간 함께해야 한다는 것이었다. 동기들이 나를 싫어하면 어쩌지, 나의 개인주의적 성향을 아니꼬워하면 어쩌지, 아니다 내 개인주의적 성향을 4주동안 철저히 숨겨서 동기들과 잘 생활해야지. 이런 저런 생각들을 하며 입소대대 운동장에 앉아 있자니 사람들이 하나둘 모여들기 시작했다. 그중에 눈에 띄는것은 네댓명의 젊은 여자들 일행이었다. 여자들만 있는 일행이라니 누구를 보러 여기 왔을까 생각하던 차에 와이프가 얘기해줬다. 연예인이 입소하는가 보다고. 이때까지는 이 연예인이 누군지 몰랐지만 나중에 훈련소 생활중 식당에서 자주 보게됐던 이 연예인은 2PM의 준호였다. 입소식은 10분만에 끝났다. 별거 없고 집합해서 연대장님 인삿말 듣고, 애국가 부르고, 함께온 가족, 친구들에게 충성하고 끝난다. 오늘은 4주 훈련 과정 중에서도 훈련수료후 사회에 흩어져서 각자의 일을 수행하는 산업기능요원, 전문연구요원, 공익법무요원, 사회복무요원들만 입소했다. 의무소방, 의무경찰들과 같이 입소하면 훈련강도가 심해 질 수 있다는 얘기를 들었기 때문에 다행이라고 생각했다. 입소식이 끝나면 바로 운동장 건너면 건물로 간다. 그 건물에서 같은 종류의 보충역끼리 구분해서 각 집합장으로 간다. 나는 전문연구요원이기때문에 우리 집합장소에는 전문연구요원들만 모였다. 들어오는 순서대로 줄줄히 앉혔다. 오기전에 어떤 글에서 이때 앞뒤에 앉은 사람이 같은 분대에서 생활하게될 동기다라는 말을 들었기 때문에 앞뒤에 앉은 사람들을 보며 앞으로 잘 지내야겠다고 생각했다. 그런데 갑자기 출석을 부르면 해당 사람은 앞으로 나와서 신원확인을 받고 뒤로 가라고했다. 그렇게 출석을 불려 뒤로 가면 거기서 출석 호명 순서대로 앉게 된다. 그리고 이 순서대로 소대, 분대가 갈리게 된다. 역시 분대를 어떻게 나눌지 같은 세부사항들은 케바케 인것 같다. 나중에 알게됐는데 이 출석 호명 순서는 서울, 경기 지역별 나이순이었다. 여기서 서울, 경기 지역이라는 것은 전문연 근무지를 의미한다. 이렇게 소대, 분대를 구분이 끝나면 개인적 질병이나 부모님 연락처 등 개인정보를 적어내는 서류를 작성하고 귀중품, 의약품 등을 걷어갔다. 나는 가져온 스마트폰의 전원을 끄고 제출했다. 안녕.. 그리울거야.. 스마트폰을 처음 갖게된 2011년이후로 하루도 떨어져 지내본 적이 없는 스마트폰과 마음속으로 4주간의 작별인사를 했다. 그렇게 간단한 입소절차를 마친 후 이제는 우리가 된 동기들과 함께 입소대대를 떠나 육군훈련소를 향해 걸어갔다. 육교를 지나 논밭을 지나 논밭 한가운데에 있는 육군훈련소 입구에 도착했다. 뭐지. 입소대대에서 육군훈련소까지는 30분은 걸어야 한다고 들었던거 같은데. 이렇게 생각하며 육군훈련소 입구를 지났다. 알고보니 육군훈련소 입구까지는 금방 도착하지만 우리가 생활할 건물까지 가는데 추가로 20분이 소요됐다. 도착해서 이것저것 개인 물품을 확인하고 개인 보급품을 받았다. 사이즈에 맞게 받아야 하는 A급 전투복은 사이즈만 조사하고 나중에 받게 된다. 이런것들은 정신없이 빠르게 진행되어 기억이 잘 나지 않는다. 이외에도 개인 생활복 및 B급 전투복에 개인 소속과 이름이 적힌 이름표를 바느질해서 붙였던 것 같다. 이렇게 바쁜 시간을 보내면 훈련소에서의 첫 저녁식사를 위해 식당으로 가게된다. 오늘 처음보는 어색한 동기들과 오늘 처음 먹어보는 어색한 짬밥을 먹으며 4주간의 훈련소생활이 시작됐음을 다시한번 실감했다. 밥먹은 후에 소중한 15분간의 샤워시간도 갖고 이것저것 하다보니 어느새 취침시간이란다. 사회에서는 퇴근후 개인 자유시간이 시작되었던 10시부터 군대에서는 취침이 시작되었다.

 

 

- Purpose: Set PC(Desktop or Laptop) for genenel perpose use like using word processor, playing game, programming and so on.

1. Change HDD(Hard Disk Drive) to SSD(Solide State Drive) to get faster read/write performance to the main memory.

2. Install two most famous OS (Windows and Ubuntu) because we don't know which OS would be needed in the future.

3. Partition and Format SSD for efficient use in the situation of two OS and one SSD

 

- Environment & Requirements

Labtop with Intel i5 CPU, 250GB SSD, Windows 10 booting USB Flash Drive, Ubuntu 16.04 LTS booting USB Flash Drive, Windows 10 PC which is used for initializing SSD and making Booting USB Flash Drive

 

- Prepare SSD

If your SSD was used before at another PC, your SSD need to be clean before use as follows:

1. Connect your SSD to another PC which has it's own main memory and OS on it.

2. Clean your SSD using diskpart program

>diskpart

>list disk

Check SSD disk #. For me, SSD disk # is 1.

>select disk 1

>clean

>convert gpt

>exit

※ GPT is need for UEFI Windows 10.

(No warranty: Google for exact information)

Fig 1. Clean your SSD using 'diskpart' program

※ The 'diskpart' program's 'clean' command use some simple mechanism to clean memory. Thas is, 'clean' command erases memory's fisrt small part and last small part.

This way is possible because the memory usage information is mostly in the first and last part of the memory and without this information this memory is recognized as empty by Users of that memory (e.g. by PC, Printer and so on).

If you want to erase all, use 'clean all' command instead of 'clean'.

(Google for further information)

 

- Prepare Windows 10 UEFI booting USB

1. Download program called 'MediaCreationTool1809.exe' at link bellow:

https://www.microsoft.com/en-gb/software-download/windows10

 

Download Windows 10

If you downloaded an ISO file for Windows 10, the file is saved locally at the location you selected. If you have a third-party DVD burning program installed on your computer that you prefer to use for creating the installation DVD, that program might open

www.microsoft.com

2. Run downloaded program

3. Follow that program guide to make Windows 10 booting USB Flash Drive

Fig 2. Making Windows 10 booting USB Flash Drive

※ Why need Windows 10 with UEFI booting, not others (e.g. BIOS booting) ?

Ubuntu only supports UEFI booting and I think we need to unify booting mechanism in the situation of one Main Memory (SSD or HDD) and two OS. Need to study further.

(No warranty: Google for exact information)

 

- Prepare Ubuntu 16.04 LTS booting USB 

 

- Replace HDD with SSD

Open the back cover of a laptop and replace HDD with SSD.

Fig 3. Replacing HDD with SSD (Left: before, Right: after)

- Install UEFI booting Window 10 with the booting USB Flash Drive

1. Enable UEFI boot at your BIOS options.

2. Boot with the booting USB Flash Drive.

3. Run Windows 10 installer and follow guide of the installer (to install Windows 10 on SSD)

4. Boot with SSD to run the newly installed Windows 10.

5. Check if your SSD has partition for EFI. If not, it means that you didn't install Windows 10 with UEFI booting mode and shuold reinstall Windows 10 with UEFI booting mode.

Fig 4. Example of the memory partition which includes EFI partition
Fig 5. Warning message during Ubuntu installation because of BIOS booting OS installed on another partition

- Planing for your SSD usage (Partitioning and Formatting) and installing Ubuntu

To use two OS on one Main Memory, you will need two partition for each OS.

You may need shared partition for the two OS which is accessible for the two OS.

For me, partitioned SSD into three region (not counting auxiliary partition like EFI partition, Recovery partition, only counting OS partition, Data partition).

My 250GB SSD was used One for Windows 10 (250*0.4 GB), another for Ubuntu 16.04 LTS (250*0.4 GB), the other for data partition (250*0.2 GB) shared by two OS.

Because we already installed Windows 10 on SSD, follow steps below to partition SSD:

(Stpe 4~5: installing Ubuntu)

1. Turn on laptop to run Windows 10 on SSD.

2. Use windows disk manager and downsize your Windows 10 partition (not EFI partition or others) resulting in 250*0.4 GB for Windows 10 partition

3. Restart laptop and boot with Ubuntu booting USB Flash Drive.

4. Install Ubuntu. During Ubuntu installation, you should select an option to partition by your self.

Fig 6. Option to partition by your self for Ubuntu installation

5. Partion 512 MB for 'EFI system partition' and 250*0.4 GB for Ubuntu.

Fig 7. Example of paritioning for Ubuntu installation
Fig 8. Result of partitioning for Ubuntu installation (Left: before Ubuntu installation, Right: after Ubuntu installation)

6. Set remaining 250*0.2 GB of SSD as Data partition.

Set remaining 250*0.2 GB as a partition and format the partition as NTFS file system which are accessible for both Window and Ubuntu.

Fig 9. Result of SSD partitions

 

- Environment


Windows 10 PC, Micro SD Card, Etcher (Burning tool), Raspberry Pi 3 Model B+


- SD Card Initialization@Windows 10 PC


Insert Your SD Card to Your Windows PC

Execute "C:\Windows\System32\diskpart.exe"

List your disks connected with your PC using command "list disk"

Select a disk you want to initialize using command "select disk 1" for example.

Clean after selecting target disk using command "clean"

Result:



Format the initilized SD card. I formatted with FAT32


For more information, refer to the line below:

https://www.dell.com/support/article/kr/ko/krbsd1/sln153364/diskpart-%EC%9C%A0%ED%8B%B8%EB%A6%AC%ED%8B%B0%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC-%EB%B6%80%ED%8C%85-%EA%B0%80%EB%8A%A5%ED%95%9C-usb-%ED%94%8C%EB%9E%98%EC%8B%9C-%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B8%8C-%EB%A7%8C%EB%93%A4%EA%B8%B0?lang=ko


- Downloading Raspbian OS Image to The Initialized SD Card@Windows 10 PC using Etcher


Download Raspbian OS Image following this link: https://www.raspberrypi.org/downloads/raspbian/

Use burning tools to burn Raspbian OS Image to The SD Card. I used a tool named "Etcher"

Result:



- Booting with Raspbian OS@Raspberry Pi

Insert the SD Card into Raspberry Pi and connect a monitor, mouse and keyboard to the Raspberry Pi(1).

Supply power to the Raspberry Pi by connecting USB Power cable to the Raspberry Pi(2).

Result:


- Notes

(1) Need HDMI cable to connect a monitor to Raspberry Pi.

(2) If your Raspberry Pi are repeating booting process, the reason could be under power. I experienced repeating booting issue when I supply power with 5V/600mA adapter and solved the problem by supplying power with 5V/1A adapter.


Receiver Operating Characteristic (ROC) Curve & Equal-Error Rate (EER) & Detection Error Trade-Off (DET) Curve & Detection Cost Function (DCF)

 

- Confusion matrix

Predicted/Actual class

Yes

No

Yes

TP

FP

No

FN

TN

 TP (True Positive) : Acceptance of the test speaker who is the same with the target speaker.

FP (False Positive) : Acceptance of the test speaker who is not the same with the target speaker.

FN (False Negative) : Rejection of the test speaker who is the same with the target speaker.

TN (True Negative) : Rejection of the test speaker who is not the same with the target speaker.

Utterances of an test speaker result in predicted class.

 

- False acceptance rate (FAR; Miss probability)

The number of verified identities for which the test speaker was different from the target speaker normalized against the total number of acceptances.

In biometrics the instance of a security system incorrectly verifying or identifying an unauthorized person. Also referred to as a type error, a false acceptance typically is considered the most serious of biometric security errors as it gives unauthorized users access to systems that expressly are trying to keep them out.

 

- False rejection rate (FRR; False alarm probability)

The number of identities which were not verified for which the test speaker was the same as the target speaker normalized against the total number of rejections.

 

- Receiver operating characteristic (ROC) curve

In the speaker recognition circles, ROC curve are normally plotted with the FAR on the abscissa and the FRR on the ordinate. In this kind of ROC, the objective is to have the area under the curve approach 0. Generally, a random guess should produce an area of about 0.5.

 

- Equal-error rate (EER)

The percentage where FRR and FAR are same.

 

- Detection error trade-off (DET) curve

The DET curve has been favored over traditional ROC curves since its introduction by NIST in 1997. The DET curve plots the miss probability in percentage form versus the false alarm probability, also in percentages. The DET curve always uses a logarithmic scale.

 

- Detection cost function (DCF)

NIST defines a DCF, , as

where,  is the cost of missed detection,  is the cost of a false alarm, P(Target) is the a-priori probability of a target speaker, and P(NonTarget) is the a-priori probability of a non-target speaker. NIST uses the following values for the 1999 NIST evaluations,

 

                                                                                                                                ※ 참고 서적 : Homayoon Geigi, 2011. Fundamentals of Speaker Recognition. Springer Science+Business Media, LLC, New York.

참고 사이트 : http://www.webopedia.com/TERM/F/false_acceptance.html

참고 사이트 : http://poseidon.csd.auth.gr/LAB_RESEARCH/Latest/SecurityBiometrics.htm

참고 사이트 : http://stackoverflow.com/questions/18436034/plot-a-det-curve

생체 인식 기술을 사용하는 목적에는 identificationverification이 있다. Identificationverification은 사용하는 기술과 메커니즘에 있어서 약간의 차이가 있다.

1. Identification (1:n) : ‘Identify’라는 단어는 누군가의 신원을 파악하는 것을 의미한다. 예를 들어, ‘I’m identifying him’내가 그를 파악한다라는 뜻이다. 이 어감에서 알 수 있듯이 사람의 경우 identification은 내가 알고 있는 수많은 사람들(n) 중에 현재 만난 한 사람(1)이 누군지 구별하는 것이다. 마찬가지로 시스템의 경우 identificationdatabase에 저장된 수 많은 사람들(n) 중에 현재 입력으로 들어온 알려지지 않은 한 사람(1)이 누군지를 찾는 것이다. 따라서 Identification을 위한 시스템은 아래와 같은 특성을 갖는다.

Database에 충분한 양의 정보를 가지고 있어야 한다. Database에 충분한 정보가 있지 않다면 입력이 들어와도 누군지를 구별하기 힘들다.

database를 효율적으로 다룰 수 있도록 설계해야 하므로 verification에 비해 더 많은 노력이 필요하다.

database를 사용하므로 identification을 하는데 많은 처리시간이 요구된다.

Identification 시스템이 사용되는 대표적인 예로 범죄수사기관이 있다. 범죄수사기관은 지문과 얼굴사진과 같은 수많은 개인식별자료를 database화해서 가지고 있다가 범죄현장에서 추출한 용의자의 지문이나 얼굴영상을 database에서 누군지 찾는데 사용한다.



2. Verification (1:1) : ‘Verify’란 어떤 대상물에 대하여 그 대상이 참인가 거짓인가를 확인한다는 뜻이다. , Verification은 한 사람(1)의 정보를 database에 가지고 있다가 현재 입력으로 들어온 알려지지 않은 한 사람(1)database에 있는 사람과 일치하는지를 확인하는 것이다.



Identificationverification을 합쳐서 recognition이라 한다.


※ 참고 사이트 : http://globalseci.com/?page_id=37

+ Recent posts