{"title":"Complex Binary Associative Dataflow Processor - A Tutorial","authors":"T. Jamil","doi":"10.1109/SECON.2018.8478931","DOIUrl":null,"url":null,"abstract":"Complex numbers play an important role in engineering applications such as digital signal processing and image processing. To represent these numbers in binary, a “divide-and-conquer'” technique is used in today's computer systems wherein a complex number is broken-up into its real and imaginary parts and then operations are carried out on each part as if it was a part of the real arithmetic. At the end., the overall result of the complex operation is obtained by the accumulation of the individual results. In other words, addition of two complex numbers, $(\\mathbf{a}+\\mathbf{jb})$ and $(\\mathbf{c}+\\mathbf{jd})$, requires two separate additions, $(\\mathbf{a}+\\mathbf{c})$ and $(\\mathbf{b}+\\mathbf{d})$, while multiplication of the same two complex numbers requires four individual multiplications (ac., ad., bc., bd), one subtraction $(\\mathbf{ac}-\\mathbf{bd}) =\\mathbf{x}$, one addition $(\\mathbf{ad}+\\mathbf{bc})=\\mathbf{y}$, and one overall addition $\\mathbf{x}+\\mathbf{jy}$. This can be effectively reduced to just one complex addition or only one multiplication and addition respectively for the given cases if each complex number is represented as single unit instead of two sub-units of real and imaginary components. This paper highlights the research on $(-\\mathbf{1}+\\mathbf{j})$-based binary number system, called Complex Binary Number System (CBNS), as it was presented in a tutorial at the IEEE SoutheastCon 2018.","PeriodicalId":102076,"journal":{"name":"SoutheastCon 2018","volume":"54 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"SoutheastCon 2018","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SECON.2018.8478931","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
Complex numbers play an important role in engineering applications such as digital signal processing and image processing. To represent these numbers in binary, a “divide-and-conquer'” technique is used in today's computer systems wherein a complex number is broken-up into its real and imaginary parts and then operations are carried out on each part as if it was a part of the real arithmetic. At the end., the overall result of the complex operation is obtained by the accumulation of the individual results. In other words, addition of two complex numbers, $(\mathbf{a}+\mathbf{jb})$ and $(\mathbf{c}+\mathbf{jd})$, requires two separate additions, $(\mathbf{a}+\mathbf{c})$ and $(\mathbf{b}+\mathbf{d})$, while multiplication of the same two complex numbers requires four individual multiplications (ac., ad., bc., bd), one subtraction $(\mathbf{ac}-\mathbf{bd}) =\mathbf{x}$, one addition $(\mathbf{ad}+\mathbf{bc})=\mathbf{y}$, and one overall addition $\mathbf{x}+\mathbf{jy}$. This can be effectively reduced to just one complex addition or only one multiplication and addition respectively for the given cases if each complex number is represented as single unit instead of two sub-units of real and imaginary components. This paper highlights the research on $(-\mathbf{1}+\mathbf{j})$-based binary number system, called Complex Binary Number System (CBNS), as it was presented in a tutorial at the IEEE SoutheastCon 2018.