Coordinate rotation by digital computer atau yang juga dikenal dengan istilah CORDIC adalah algoritma sederhana yang digunakan untuk menghitung operasi khusus seperti hiperbolik, akar, trigonometri dan bahkan logaritmik. Algoritma yang efisien ini memiliki kecepatan yang lebih tinggi jika dibandingkan dengan metode pendekatan lainnya. Untuk lebih mengenal CORDIC, anda simak saja ulasan berikut.
Coordinate Rotation By Digital Computer
Banyaknya pengguna yang memanfaatkan CORDIC daripada metode lainnya karena terbilang lebih sederhana. Pada FPGA (Field Programmable Gate Array), metode CORDIC ini bisa mengurangi jumlah gate yang akan digunakan dalam perancanangan. Dalam algoritmanya, metode CORDIC ini menerapkan iterasi dari bentuk rotation mode yang memiliki sudut bebas. Untuk melakukannya hanya dibutuhkan pergeseran, penambahan dan tabel lookup. Tak heran jika metode ini banyak dibilang sangat simple.
Coordinate rotation by digital computer menggunakan rotasi dalam menghitung beragam fungsi dasar. Dengan metode ini, anda bisa melihat operasi yang bisa dicapai hanya dengan memutar vektornya. Misalnya saja, anda mempunyai sistem efisien penerima vektor dan memutar dengan sudut sembarang $$ \ theta $$. Pilih asal sebagai pusat rotasinya sehingga anda akan tiba pada titik ($$ x_1, y_1 $$) dengan $$ \ theta $$ memutar titik ($$ x_0, y_0 $$).
$$ x_R = x_ {in} cos (\ theta) – y_ {in} sin (\ theta)
$$
$$ y_R = x_ {in} sin (\ theta) + y_ {in} cos (\ theta) $$
Persamaan CORDIC
Berikut adalah persamaan-persamaan CORDIC yang tak boleh anda lewatkan.
Persamaan 1 Memutar Vektor Input oleh $$ \ theta $$
$$ x_R = cos (\ theta) $$
$$ y_R = sin (\ theta) $$
Persamaan 2 Menghitung Sin dan Cos dari Sudut Acak Melalui Rotasi
Misalnya, dalam mempertimbangkan besaran vektor, $$ \ sqrt {x_ {in} ^ 2 + y_ {in} ^ 2} $$, anda perlu merotasi vektor input agar bisa selaras dengan sumbu x. Saat anda menerapkan cara ini, $$ y_ {R} = 0 $$ dan komponen x nantinya akan memberikan besaran vektor. Perlu untuk anda ketahui, daftar fungsi yang bisa dihitung dari rotasi relatif panjang.
Persamaan 3
$$ \ begin {bmatrix} x_ {0} \\ y_ {0} \ end {bmatrix} = cos (45˚) \ begin {bmatrix} 1 & -1 \\ 1 & 1 \ end {bmatrix} \ begin { bmatrix} x_ {in} \\ y_ {in} \ end {bmatrix} $$
Persamaan 4
$$ \ begin {bmatrix} x_ {1} \\ y_ {1} \ end {bmatrix} = cos (26.565˚) \ begin {bmatrix} 1 & -2 ^ {- 1} \\ 2 ^ {- 1} & 1 \ end {bmatrix} \ begin {bmatrix} x_ {0} \\ y_ {0} \ end {bmatrix} $$
Persamaan 5
$$ \ begin {bmatrix} x_ {1} \\ y_ {1} \ end {bmatrix} = cos (45˚) cos (26.565˚) \ begin {bmatrix} 1 & -1 \\ 1 & 1 \ end { bmatrix} \ begin {bmatrix} 1 & -2 ^ {- 1} \\ 2 ^ {- 1} & 1 \ end {bmatrix} \ begin {bmatrix} x_ {in} \\ y_ {in} \ end {bmatrix } $$
Persamaan 6
$$ \ begin {bmatrix} x_ {2} \\ y_ {2} \ end {bmatrix} = cos (-14.03˚) \ begin {bmatrix} 1 & 2 ^ {- 2} \\ -2 ^ {- 2 } & 1 \ end {bmatrix} \ begin {bmatrix} x_ {1} \\ y_ {1} \ end {bmatrix} $$
Persamaan 7
$$ \ begin {bmatrix} x_ {2} \\ y_ {2} \ end {bmatrix} = cos (45˚) cos (26.565˚) cos (-14.03˚) \ begin {bmatrix} 1 & -1 \\ 1 & 1 \ end {bmatrix} \ begin {bmatrix} 1 & -2 ^ {- 1} \\ 2 ^ {- 1} & 1 \ end {bmatrix} \ begin {bmatrix} 1 & 2 ^ {- 2} \\ -2 ^ {- 2} & 1 \ end {bmatrix} \ begin {bmatrix} x_ {in} \\ y_ {in} \ end {bmatrix} $$
Persamaan 8
$$ x \ left (i + 1 \ right) = x \ left (i \ right) – \
sigma_ {i} 2 ^ {- i} y \ left (i \ right) $$
$$ y \ left (i + 1 \ right) = y \ kiri (i \ right) + \ sigma_ {i} 2 ^ {- i} x \
kiri (i \ right) $$
Perlu diketahui, $$ \ sigma_ {i} \ dalam \ kiri \ {+1, -1 \ right \} $$ berperan untuk menentukan tanda dari sudut dasar. Persamaannya menunjukkan bahwa algoritme selalu berotasi dengan sudut yang telah ditentukan sebelumnya. Dalam hal ini, satu-satunya hal yang ditetapkan algoritma coordinate rotation by digital computer ialah apakah tiap rotasi nantinya akan searah atau justru berlawanan arah jarum jam selama tiap iterasi. Hal tersebut diukur dengan aturan $$ \ sigma_ {i} $$ sama dengan +1 atau -1.
Comment