3
변수의 갯수(k)를 계산한 후 n개의 FCSR 값을 저장하기 위한 변수와 메모리 값을 저장할 메모리 변수 및 새로운 값을 계산하여 저장할 임시 변수들을 선언하고 상기 n개의 FCSR 값을 저장하기 위한 변수에 저장된 값들을 분할하여 저장할 때 필요한 변수를 선언하는 제 1 단계와, 초기값으로 주어진 n개의 값을 상기 n개의 FCSR 값을 저장하기 위한 변수에 대입하여 저장하고 남은 변수의 왼쪽 메모리 부분을 0으로 채운 다음 초기값으로 주어진 메모리값을 상기 메모리 변수에 저장하고 상기 메모리 변수를 왼쪽으로 메모리 시프트시키는 제 2 단계와, 초기변수에 저장된 초기값을 네 개의 변수로 분할하여 저장하는 제 3 단계와, 상기 제 3 단계에서 생성된 분할된 변수들을 이용하여 LFSR의 임시변수를 계산한 후 계산된 상기 임시변수를 정수연산으로 더하여 저장하는 제 4 단계와, FCSR의 새로운 항을 생성하기 위하여 전 항에서 갱신된 메모리를 정수합에 더해주는 과정을 임시변수들에 저장된 변수에 대해 순차적으로 진행하는 제 5 단계와, 각각의 정수합이 저장된 메모리 중 오른 쪽에서 두번째의 값을 메모리 값으로 갱신하는 제 6 단계와, 새로운 32 비트 FCSR 값을 얻고난 후 다음 32 비트를 얻기 위하여 변수를 치환하는 제 7 단계와, 원하는 비트의 출력을 얻을 때까지 상기 제 4 단계 및 제 7 단계의 과정을 반복 실시하는 제 8 단계를 포함하여 이루어지는 것을 특징으로 하는 시프트 레지스터의 소프트웨어 구현 방법
|