|
|
|
|
논리회로설계 - 영상 스크램블러
|
|
|
|
논리회로설계 프로젝트
자유주제 : 영상 스크램블러
작품설명
요즘 시대적으로 보안이라는 말에 상당히 민감하다 해킹을 당하여 정보를 도난당하는등 사회적으로 문제가 대두되고 있는데, 만약 전송되는 데이터를 암호화하여 전송하고 다시 수신측에서는 그 암호화와 같은 알고리즘으로 수신을 하면 도중에 정보를 가로채가더라도 암호알고리즘을 알지못하면 무용지물이 되어 정보보호가 조금더 되지않을까하는 생각에서 화면을 일정한규칙으로 섞어서 알고리즘을 모르는 사람이 봤을때는 온전한 데이터가 무엇인지 알수없도록 하는 작품을 설계해보았다.
기본컨셉은 DUT에서 데이터를 차례대로 읽어와 내부 레지스터에 그값들을 저장하고 다시 내보낼때는 그데이터들의 순서를 일련의 알고리즘 형태로 섞는 방식으로 한다. 내부에 같은 크기의 레지스터 2개를 만들어서 시작신호가 들어오면 DUT_sel 신호가 0,1이반복되면서 차례로 mem1과 mem2를 사용하여 실시간으로 처리를 할수있도록 설계하였다. 25M[hz] 클럭을 사용하면 Delay가 5ms, troughput delay는 2.5ms가된다. 충분히 실시간 영상처리가 가능하다. 부수적으로 raw파일을 txt파일로, txt파일을 raw파일로 변환해주는 c코딩을 만들었다.
회로 입출력 및 기능
1. 입력
1) Start : 섞는작업을 시작하라는 신호.
2) D_in : 데이터를 읽어온다.
2. 출력
1) addr_read : 저장된 파일을 읽어드릴 때 주소값을 준다.
2) addr_write : 섞여진 데이터를 쓸 때 주소값을 준다.
3) we_read,write : Sram에 읽을것인지 쓸것인지 신호를 준다.
4) D_out : Sram에 저장할 데이터를 출력한다.
5) ready : 읽는 작업이 완료됐는지 안됐는지 상태를 알려준다.
3. 기능
입력된 데이터를 일련의 과정으로 섞어서 하나의 이미지파일로 저장한다.
뒤섞인 데이터는 본래의 데이터순서로 바꾸어준다.
.... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|