'이론 관련/컴퓨터 관련'에 해당되는 글 26건

  1. 2017.12.26 USB class - DFU(Device Firmware Upgrade)
  2. 2017.12.20 불 대수(bool algebra)
  3. 2017.04.27 DDR3 ZQ calibration
  4. 2017.04.14 MMIO 하드웨어와 소프트웨어의 결합
  5. 2017.03.06 CMT SMT?
  6. 2016.05.08 db shading
  7. 2016.02.02 h.264 헤더
  8. 2016.01.28 RAID6 (2)
  9. 2016.01.28 file system snapshot
  10. 2015.11.23 tsl - test and set lock

아이폰이나 아이패드에서 DFU 어쩌구 하길래 들어본적은 있는데

먼가해서 찾아본 건 아니고..


부트로더 관련해서 보다 보니(tivaware bootloader)

Three update protocols are utilized. On UART, SSI, I2C, and CAN, a custom protocol is used to communicate with the download utility to transfer the firmware image and program it into flash. When using Ethernet or USB DFU, however, different protocols are employed. On Ethernet the standard bootstrap protocol (BOOTP) is used and for USB DFU, updates are performed via the standard Device Firmware Upgrade (DFU) class. 

이런게 보여서 검색해보니..


USB HID class 처럼 

USB DFU class가 존재하는 표준으로 제공되는 클래스 이다.

[링크 : https://cscott.net/usb_dev/data/devclass/usbdfu10.pdf]


USB Device Firmware Upgrade (DFU) is an official USB device class specification of the USB Implementers Forum.

It specifies a vendor and device independent way of updating the firmware of a USB device. The idea is to have only one vendor-independent firmware update tool as part of the operating system, which can then (given a particular firmware image) be downloaded into the device. 

[링크 : http://wiki.openmoko.org/wiki/USB_DFU_-_The_USB_Device_Firmware_Upgrade_standard]


+

[링크 : http://www.usb.org/developers]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

USB class - DFU(Device Firmware Upgrade)  (0) 2017.12.26
불 대수(bool algebra)  (0) 2017.12.20
DDR3 ZQ calibration  (0) 2017.04.27
MMIO 하드웨어와 소프트웨어의 결합  (0) 2017.04.14
CMT SMT?  (0) 2017.03.06
db shading  (0) 2016.05.08
Posted by 구차니

댓글을 달아 주세요

대학교 1학년때 였나 2학년 전공가서 였나..

컴퓨터 구조 시간에 불 대수를 배웠는데

카르노 맵과 드모르간 법칙등이 이해가 안갔는데 이제야 차분히 보니 이해가 되네..

그때 공부를 제대로 했으면 FPGA를 다뤘을려나...


아무튼 OR는 논리합(logical disjunction) - 논리적 괴리/이접

AND는 논리곱(logical conjunction) - 논리접 결합/접속

이라는데 솔찍히 A+B 라고 논리합을 OR 표기하다 보니 거기서 혼동이 온듯..


논리표는 지긋지긋 하게들 봤을테고(?)

다시 한번 적자면 아래와 같고, 특이한 것은 바로 같은 입력 일때와 다른 입력일때의 차이이다.

A+B=R (OR)

 AxB=R (AND)

F+F=F

T+F=T

F+T=T

T+T=T

FxF=F

TxF=F

FxT=F

TxT=T


그리고 논리에서 T는 1로 치환되니

A+B=R (OR)

 AxB=R (AND)

F+F=F

1+F=T

F+1=T

T+T=T

FxF=F

1xF=F 는 곧 1xA=A

Fx1=F 는 곧 Ax1=A

TxT=T

(1+A)=1

(1A)=A

로 유도가 된다.


그리고 A+A'=T 이고 1이 되니 

(A+A')B는

(1)B

1xB = B 가 된다.


X+XY = X(1+Y) = X*1= X 로 유도


드모르간 법칙은 (X+Y)'= X'Y' 인데

(X+Y)'=R 

F+F=F가 F' = T

T+F=T가 T' = F

F+T=T가 T' = F

T+T=T가 T' = F

가 되고

AxB=R

FxF=F

TxF=F

FxT=F

TxT=T

와 비슷하게 TxT=T 인걸 뒤집으면 되니

A'xB'=R

F'xF'=TxT=T

T'xF'=FxT=F

F'xT'=TxF=F

T'xT'=FxF=F


유도는 좀 똥같은데

아무튼 (A+B)' = A'B' 라는 결론이 도출된다.

[링크 : http://www.kyobobook.co.kr/product/detailViewKor.laf?barcode=9788935304394]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

USB class - DFU(Device Firmware Upgrade)  (0) 2017.12.26
불 대수(bool algebra)  (0) 2017.12.20
DDR3 ZQ calibration  (0) 2017.04.27
MMIO 하드웨어와 소프트웨어의 결합  (0) 2017.04.14
CMT SMT?  (0) 2017.03.06
db shading  (0) 2016.05.08
Posted by 구차니

댓글을 달아 주세요

on-die termination (ODT)

DQ (Data Strobe)


DDR3가 되면서 클럭이 올라가고

그러면서 임피던스 매칭이 더 중요하다는데..

ZQ는 도대체 머야 -ㅁ-???!


[링크 : http://www.easytv.co.kr/114] ZQ caliration

[링크 : http://www.easytv.co.kr/115] Dynamic ODT

[링크 : http://www.easytv.co.kr/120] RESET, 8bit prefetch


[링크 : http://www.nxp.com/files-static/training_pdf/VFTF09_AN111.pdf]

[링크 : https://www.micron.com/~/media/documents/products/technical-note/dram/tn4102.pdf]


[링크 : https://www.micron.com/~/media/documents/products/technical-note/dram/tn4605.pdf]

[링크 : http://cs.ecs.baylor.edu/~maurer/CSI5338/JEDEC79R2.pdf]



odroid c2의 DDR3 쪽 보는데 ZQ는 보이는데 설명이 많이 부실하네...

[링크 : https://dn.odroid.com/S905/DataSheet/S905_Public_Datasheet_V1.1.4.pdf]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

USB class - DFU(Device Firmware Upgrade)  (0) 2017.12.26
불 대수(bool algebra)  (0) 2017.12.20
DDR3 ZQ calibration  (0) 2017.04.27
MMIO 하드웨어와 소프트웨어의 결합  (0) 2017.04.14
CMT SMT?  (0) 2017.03.06
db shading  (0) 2016.05.08
Posted by 구차니

댓글을 달아 주세요

나 같은 프로그래머야 손쉽게

특정 메모리 번지에 값을 쓰면 하드웨어가 제어되는데

이게 하드웨어적으로 어떻게 처리되는지가 궁금해서 찾다가 든 생각


어짜피 CPU 내부 레지스터는 플립플롭이고 값이 변화하지 않는 이상 + 전기가 공급되는 이상

회로에 입력으로 쓰일수 있는 값이 지속적으로 나오고 있으니

레지스터는 하드웨어 플립플롭이고

cpu의 메모리 디코더를 통해 해당 플립플롭으로 값을 쓸수 있도록

메모리 번지와 하드웨어 어드레스 매칭을 통해 cpu에서 저장할 공간을 해당 플립플롭을 연결해주면

하드웨어 - 소프트웨어 연결이 끝! 일려나?


다만 DRAM의 경우 읽으면 다시 리프레시 하거나 해줘야 하니

이런식으로 쓰긴 힘들거 같고.. 그래픽 카드 값은 넓은 범위의 메모리를 쓰는 녀석들은

DMA 등을 통해 자기 자신의 메모리가 건드려지게 되면 내부적으로 트리거 되서 작동하도록 되어 있으려나?



결론은.. 현 구조의 CPU 에서는 레지스터는 필수불가결한 존재?


[링크 : https://en.wikipedia.org/wiki/Processor_register]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

불 대수(bool algebra)  (0) 2017.12.20
DDR3 ZQ calibration  (0) 2017.04.27
MMIO 하드웨어와 소프트웨어의 결합  (0) 2017.04.14
CMT SMT?  (0) 2017.03.06
db shading  (0) 2016.05.08
h.264 헤더  (0) 2016.02.02
Posted by 구차니

댓글을 달아 주세요

AMD에서 CMT를 밀었다 말아 먹고 SMT 구조로 온건가..

Cluster based Multi threading - CMT

[링크 : https://scalibq.wordpress.com/2012/02/14/the-myth-of-cmt-cluster-based-multithreading/]


Simultaneous multithreading - SMT/HT(Hyper Threading) 하드웨어 레벨의 멀티쓰레딩(슈퍼스칼라 cpu가 필수조건)


Chip-level multiprocessing - CMP 혹은.. SMP 일려나(Symmetric Multi Processing?)

[링크 : https://en.wikipedia.org/wiki/Simultaneous_multithreading]

[링크 : https://ko.wikipedia.org/wiki/동시_멀티스레딩]



---

가장 위의 링크를 요약하면..

AMD는 CMT 구조로 가기 위해서 트랜지스터 조낸 때려박았으나 CMT를 비활성화 하면

비활성화된 코어 갯수 만큼 ALU도 같이 비활성화 되지만


Intel의 SMT 구조는 SMT를 비활성화 하면 한쪽 코어에 ALU를 몰빵해주어서 더 성능이 오르는 구조

머.. 이런 의미인듯.



SMT는 불도저 에서 부터 마켓팅 용어로 꺼낸걸려나?

[링크 : https://en.wikipedia.org/wiki/Bulldozer_(microarchitecture)]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

DDR3 ZQ calibration  (0) 2017.04.27
MMIO 하드웨어와 소프트웨어의 결합  (0) 2017.04.14
CMT SMT?  (0) 2017.03.06
db shading  (0) 2016.05.08
h.264 헤더  (0) 2016.02.02
RAID6  (2) 2016.01.28
Posted by 구차니

댓글을 달아 주세요

샤딩이라길래 쉬이딩 오타인줄 알고 찾아봄


일단 원리는...

테이블별로 서버를 분할해서 접속하는 식으로 로드 밸런싱을 하거나

동일 테이블에서 레코드를 구분해서 밸런싱 하는 등의 방법..


[링크 : http://mongodb.citsoft.net/?page_id=225]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

MMIO 하드웨어와 소프트웨어의 결합  (0) 2017.04.14
CMT SMT?  (0) 2017.03.06
db shading  (0) 2016.05.08
h.264 헤더  (0) 2016.02.02
RAID6  (2) 2016.01.28
file system snapshot  (0) 2016.01.28
Posted by 구차니

댓글을 달아 주세요



• Coded slice (regular VCL data),

• Coded data partition A, B, C (DPA, DPB, DPC),

• Instantaneous decoder refresh (IDR),

Supplemental enhancement information (SEI),

Sequence and picture parameter set (SPS, PPS),

• Picture delimiter (PD) and filler data (FD).

[링크 : http://iphome.hhi.de/wiegand/assets/pdfs/DIC_H264_07.pdf]

[링크 : http://stackoverflow.com/questions/12320604/embedding-metadata-to-h-264-encoded-file]


[링크 : http://egloos.zum.com/yajino/v/782492]

[링크 : http://mmlab.knu.ac.kr/Lecture/hci/multi_2008_2/H.264_AVC_2008_7.pdf]


SODB (String Of Data Bits)

RBSP (Raw Byte Sequence Payload)

NAL(Netwrok Abstract Layer)

[링크 : https://codesequoia.wordpress.com/2009/10/18/h-264-stream-structure/]



[링크 : http://vaplab.ee.ncu.edu.tw/~mktsai/data/h264_introduction.ppt]


format pdf

[링크 : http://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.264-200305-S!!PDF-E&type=items]

[링크 : http://mmlab.knu.ac.kr/Lecture/hci/multi_2008_2/H.264_AVC_2008_4.pdf]

[링크 : http://iphome.hhi.de/wiegand/assets/pdfs/DIC_H264_07.pdf]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

CMT SMT?  (0) 2017.03.06
db shading  (0) 2016.05.08
h.264 헤더  (0) 2016.02.02
RAID6  (2) 2016.01.28
file system snapshot  (0) 2016.01.28
tsl - test and set lock  (0) 2015.11.23
Posted by 구차니

댓글을 달아 주세요

raid5가 의외로 고자라니... ㄷㄷㄷ

raid5는 N-1의 공간 효율을 가지는데

CRC 하나라서 동시 디스크 2개 이상의 손상에 대해서는 복구할 방법이 없다.

그런데 정작 필드에서 복구율을 보면 raid 라고 하기 처참한 상황


아래 그래프가 맞자면 raid0이랑 별반 다름없는 상황인데

하드가 3년 정도 주기로 서버에서는 교체할테니 고장률 35%대..


[링크 http://linux.krauss.kr/doku.php/raid_신뢰성_고찰]


아무튼 이런 이유로 대세는 raid6 라고..

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

db shading  (0) 2016.05.08
h.264 헤더  (0) 2016.02.02
RAID6  (2) 2016.01.28
file system snapshot  (0) 2016.01.28
tsl - test and set lock  (0) 2015.11.23
SNTP - Simple NTP  (0) 2015.11.12
Posted by 구차니

댓글을 달아 주세요

  1. 레이드 정보 잘 보고갑니다~!

    2016.04.27 17:49 신고 [ ADDR : EDIT/ DEL : REPLY ]

음.. 대충 이해한걸로는

하드 데이터 복구랑 비슷한 기분?


파일이 삭제 되거나 수정하면

다른 inode에 저장/삭제를 할 텐데


file system 레벨에서

그걸 삭제한게 아니라 version history 관리하듯

촤르륵 목록으로 냅두고 실제로 삭제하지 않음으로서


inode 목록만 저장(snapshot) 해두고

그걸로 이전의 시간대로 복구하는 개념..


CoW(Copy on Write) 는 스냅샷을 구현하는 방법론이 되려나?


[링크 : http://hybridstoragekorea.blogspot.com/2013/10/blog-post_4204.html]



Snapshot technology
 Copy-
on-write
Redirect-
on-write
Clone/
split mirror
COW
w/back-
ground
copy
IncrementalCDP
Snapshot is tightly
coupled to original data
YesYesNoYes, until
background
copy finishes
Depends on how
original snapshot
is generated
No
Space efficientYesYesNoNoNoYes, versus multiple
point-in-time snapshots


[링크 : http://searchdatabackup.techtarget.com/...snapshot-technologies-for-data-protection]



고민을 해보니.. SSD에서는 구현 못하는거 아냐? inode가 붕뜨면 삭제처리 할텐데?(Trim)

했는데.. fs 레벨에서 inode 삭제가 아니라 삭제된 inode로 다른 테이블에서 실 데이터로 관리해주면

trim에 의해서 삭제 되지 않을테니 문제 없음! 이 될 것 같고


하드 공간이 넉넉하지 않으면 엄청난 성능 저하 및

snapshot으로 복구 할 가능성이나 시간대역이 짧아질 문제가 있을 것으로 보인다.


만약.. 4T 하드에 3T 내용이 있고

그 내용 전부를 크립토락커로 당했다면.. 전부 복구가 불가능 해질 가능성도 존재할 것으로 생각이 된다...

(아니면 말고..)


한마디로.. 삭제 된 파일도 실제 FS 상에서는 .remove 식으로 관리해둔다고 보면 될 듯?(리눅스 기준)




+

저널링은 갑작스런 전원 중단으로 인한 불일치를 복구하는데 유리한 시스템이고

(commit이 완료되면 엎어씀)

스냅샷은 엎어쓰지 않아서 정전과 상관없는 백업을 유리하게 하는 시스템..


Versioning file systems should not be confused with journaling file systems. Whereas journaling file systems work by keeping a log of the changes made to a file before committing those changes to that file system (and overwriting the prior version), a versioning file system keeps previous copies of a file when saving new changes. The two features serve different purposes and are not mutually exclusive.


[링크 : https://en.wikipedia.org/wiki/Versioning_file_system]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

h.264 헤더  (0) 2016.02.02
RAID6  (2) 2016.01.28
file system snapshot  (0) 2016.01.28
tsl - test and set lock  (0) 2015.11.23
SNTP - Simple NTP  (0) 2015.11.12
MMIO <-> PMIO  (0) 2015.07.28
Posted by 구차니

댓글을 달아 주세요

예전 멀티프로세서 환경에서의 세마포어 등을 공부할때(OS 수업)

들은거 같은데 기억이 안나서 뒤적이다가 겨우 찾았네..


왜 쓸데없는(?!) TLB랑 용어를 헷갈린거지?


[링크 : https://en.wikipedia.org/wiki/Test-and-set]

'이론 관련 > 컴퓨터 관련' 카테고리의 다른 글

RAID6  (2) 2016.01.28
file system snapshot  (0) 2016.01.28
tsl - test and set lock  (0) 2015.11.23
SNTP - Simple NTP  (0) 2015.11.12
MMIO <-> PMIO  (0) 2015.07.28
pkzip 포맷  (0) 2015.04.17
Posted by 구차니

댓글을 달아 주세요