1C 1C
sj 11 Изобретение относитс к вычислительной технике и может быть использовано дл выполнени контролируемог арифметического сдвига с округлением результата. Цель изобретени - повышение достоверности функционировани устройст ва. На фиг. 1 изображена схема устройства дл сдвига с контролем; на фИ1. 2 - схема блока вычислени поправок (дл шестнадцатиразр дного чис ла) ; на фиг. 3 - схема блока сдвига Устройство дл сдвига числа с кон ролем СФИ1.1) содержит блок 1 сдвига блок 2 вычислени поправок, элемент И 3, элементы ИСКЛЮЧАЩЕЕ ИЛИ 4-7, блоки 8 и 9 делени на константу по модулю, входы 10-12 соответственно кода сдвига, контрольного кода и: зна ка устройства, информационный вход 13 устройства, выходы 14 и 15 соответственно ошибки и контрольно1о кода устройства, информационный выход 16 устройства. Блок 2 вычислени поправок (фиг. содержит сумматоры 17-20 по модулю три, мультиплексоры 21-25, элемент И 26 и 27, информационный вход 28 и вход 29 кода сдвига блока, вьЪсод 30 блока. Блок сдвига содержит комбинацион ный сдвигатель 31, элемент И 32, эле менты 33 и 34 запрета, элемент ИЛИ 35,информационный вход 36 блока, входы 37 и 38 соответственно кода сдвига и знака блока, старшие разр ды 39 информационного выхода блока, младший разр д 40 информационного выхода блока, выход 41 нескорректиро ванного младшего разр да блока. Блоки 8 и 9 делени на константу по модулю выполн ют деление на три по модулю три. В устройстве дл сдвига числа с контролем прин т метод контрол ; по модулю три. Устройство работает следующим образом. На входы 13 и 12 подаютс соответственно операнд (в обратном или дополнительном коде) и его знак, на вход 10 поступает двоичный код сдвига выполн етс сдвиг операнда вправо с распространением знака в блоке ,1 сдвига, разр ды информационного входа KOTopoio поступают навых.од16 устройства. 2 Операнд и двоичный код сдвига поступают также на соответствующие входы блока 2 вычислени поправок. Младший разр д кода сдвига и знак поступают на входы элемента И 3. Блок 2 вычислени поправок и элемент И 3 определ ют изменение делимости исходного числа на три, вызванное заполнением освобождаемых при сдвиге числа разр дов значени ми знака, а также отбрасыванием младших разр дов относительно весовых функций исходного числа (числа до сдвига). Коррекци младшего разр да результата , выполн ема в блоке 1 сдвига, измен ет делимость на три числа, снимаемого с выходов блока 1 сдвига. Это изменение определ етс вычетом по модулю три, образованным значени ми сигнала на младшем разр де информационного выхода блока 1 сдвига и выходе его нескорректированного младшего разр да относительно весовых функций числа после сдвига. Значени указанных разр дов поступают с выходов блока 1 сдвига на выходы элементов ИСКЛЮЧАЩЕЕ ИЛИ 6 и 7, на другие входы которых приходит младший разр д кода сдвига с входа 10 устройства. При нулевом значении этого разр да код приходит на выходы этих элементов, без изменени , при единичном значении разр да - код инвертируетс . Таким образом, код с выходов блока 1 сдвига приводитс к определению относительно весовых функций исходного числа (поскольку сдвиг числа на нечетное количество разр дов, идентифицируемое единичным , значением младшего разр да кода сдвига , инвертирует вычет этого числа). Коды, снимаемые с выходов элементов 3, 6 и 7 и блока 2, поступают, на входы nepaoio блока 8 делени на константу , на другие входы которого приходит с входа 11 устройства контрольный код, вл ющийс вычетом по модулю три исходного числа. При этом на выходах блока 8 вычисл етс контрольный код числа, учитывающий заполнение его разр дов значением знака, отбрасывание части разр дов и коррекцию младшего разр да. Полученный код с выходов блока 8 поступает на входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 4 и 5, на другие входы которых поступает младший разр д кода сдвига. На этих элементах учитываетс изменение дели 12sj 11 The invention relates to computing and can be used to perform a controlled arithmetic shift with rounding result. The purpose of the invention is to increase the reliability of the operation of the device. FIG. 1 shows a diagram of a device for shifting with control; on FI1. 2 is a diagram of an amendment calculation unit (for a sixteen-bit number); in fig. 3 is a diagram of a shift unit. A device for shifting a number with a consonant SFI1.1) contains a shift unit 1 an correction calculation unit 2, an AND element 3, an EXCLUSIVE OR element 4-7, blocks 8 and 9 dividing by a constant by module, inputs 10-12 respectively, the shift code, the control code and: the device sign, the device information input 13, the outputs 14 and 15, respectively, the error and the control code of the device, the information output 16 of the device. Correction calculation block 2 (Fig. Contains adders 17-20 modulo three, multiplexers 21-25, element 26 and 27, information input 28 and block shift code input 29, block b module 30. The shift block contains a combination shift 31, element And 32, prohibition elements 33 and 34, element OR 35, informational input 36 of the block, inputs 37 and 38, respectively, of the shift code and the sign of the block, the senior bits 39 of the information output of the block, the low-order bit 40 of the information output of the block, output 41 of the uncorrected the lower bit of a block. Blocks 8 and 9 are divided by a constant modulo divide by three by modulo three. In the device for shifting the number with control, the control method is adopted; modulo three. The device works as follows: An input operand (in reverse or auxiliary code) and its sign, input 10 enters the binary shift code; the operand is shifted to the right with the propagation of the sign in the block; 1 offset; information bits of the KOTopoio information input are output from one or 16 devices. The 2 operand and the binary shift code also arrive at the corresponding inputs of the correction calculation unit 2. The low bit of the shift code and the sign are fed to the inputs of element 3. The correction calculation unit 2 and the element 3 determine the change in divisibility of the original number by three, caused by filling the number of bits released by shifting the number of bits with the values of the sign and weight functions of the original number (numbers before the shift). The correction of the least significant bit of the result performed in the shift unit 1 changes the divisibility by three numbers, taken from the outputs of the shift unit 1. This change is determined by a modulo-three residue formed by the values of the signal at the low-order bit of the information output of the shift unit 1 and the output of its uncorrected low-order bit relative to the weight functions of the number after the shift. The values of these bits come from the outputs of the shift unit 1 to the outputs of the EXCLUSIVE OR elements 6 and 7, to the other inputs of which the low-order shift code comes from the input 10 of the device. With a zero value of this bit, the code arrives at the outputs of these elements, without change, with a single value of the bit — the code is inverted. Thus, the code from the outputs of the shift unit 1 is determined with respect to the weight functions of the initial number (since shifting the number by an odd number of bits identified by a single, the low-order value of the shift code inverts the deduction of that number). Codes removed from the outputs of elements 3, 6 and 7 and block 2 are sent to the nepaoio inputs of the dividing unit 8 by a constant, to the other inputs of which comes from device input 11 a control code, which is a deduction of three original numbers. At the same time, at the outputs of block 8, a check code of a number is calculated, taking into account the filling of its bits with the value of the sign, discarding part of the bits and correction of the lower bit. The resulting code from the outputs of block 8 is fed to the inputs of the EXCLUSIVE OR elements 4 and 5, to the other inputs of which the low-order shift code is fed. These elements take into account the change in delta 12
мости числа вследствие изменени при сдвиге его весовых функций. При этом на их выходах образуетс контрольный код результата устройства. Контрольный код поступает на выход 15 устройства и на вход второго блока 9 делени на константу, на котором производитс совместна свертка этого кода с результатом устройства.При этом разр дность результата устройства должна быть четным числом, что дл нечетного числа достигаетс дополнением результата слева знаковым разр дом , поступающим на вход блока 9 с выхода блока 1 сдвига. Совместна сверка результата устройства с вычисленным дл него контрольным кодом устанавливает их соответствие друг другу в виде кода состо ни устройства , поступающего на выход 14. Код состо ни устройства позвол ет судить о правильности работы устройства .the bridges of the number due to the change in the shift of its weight functions. In this case, a control result code of the device is formed at their outputs. The control code is fed to the output 15 of the device and to the input of the second dividing unit 9 by a constant, at which a joint convolution of this code with the result of the device is performed. At the same time, the result of the device must be an even number, which for an odd number is achieved by complementing the left with significant digit arriving at the input of block 9 from the output of block 1 shift. The joint verification of the result of the device with the control code calculated for it establishes their correspondence to each other in the form of the device status code arriving at output 14. The device status code allows to judge the correctness of the device operation.