Предмет:
Тип роботи:
Контрольна робота
К-сть сторінок:
40
Мова:
Русский
'Operator' ), strcat( gcb, '/Relational Operator', num2str( i ) ), 'Operator', '==' )
add_line( gcb , 'Demux/4' , strcat( 'Relational Operator' , num2str( i ) , '/1' ) )
add_block( 'Librs/Constant', strcat( gcb, '/Constant', num2str( i ) ), 'value', num2str( QOuts( i ) ) )
add_line( gcb , strcat( 'Constant', num2str( i ), '/1' ), strcat( 'Relational Operator' , num2str( i ) , '/2' ) )
add_block( 'Librs/Switch', strcat( gcb, '/Switch', num2str( i ) ) )
add_line( gcb, strcat( 'Relational Operator', num2str( i ), '/1' ), strcat( 'Switch' , num2str( i ) , '/2' ) )
add_line( gcb, 'Zero/1', strcat( 'Switch' , num2str( i ) , '/3' ) )
add_line( gcb, 'In1/1', strcat( 'Switch' , num2str( i ) , '/1' ) )
add_block( 'Librs/Out1' , strcat( gcb, '/Out' , num2str( i ) ) )
add_line( gcb, strcat( 'Switch' , num2str( i ) , '/1' ), strcat( 'Out', num2str( i ), '/1' ) )
end
else
for i=k+1:OldK
delete_line( gcb , 'Demux/4' , strcat( 'Relational Operatr' , num2str( i ) , '/1' ) )
delete_line( gcb , strcat( 'Constant', num2str( i ), '/1' ), strcat( 'Relational Operator' , num2str( i ) , '/2' ) )
delete_line( gcb, strcat( 'Relational Operator', num2str( i ), '/1' ), strcat( 'Switch' , num2str( i ) , '/2' ) )
delete_line( gcb, 'Zero/1', strcat( 'Switch' , num2str( i ) , '/3' ) )
delete_line( gcb, 'In1/1', strcat( 'Switch' , num2str( i ) , '/1' ) )
delete_line( gcb, strcat( 'Switch' , num2str( i ) , '/1' ), strcat( 'Out', num2str( i ), '/1' ) )
delete_block( strcat( gcb, '/Relational Operator', num2str( i ) ) )
delete_block( strcat( gcb, '/Constant', num2str( i ) ) )
delete_block( strcat( gcb, '/Switch', num2str( i ) ) )
delete_block( strcat( gcb, '/Out' , num2str( i ) ) )
end
уnd
set_param(strcat(gcb,'/Old'),'Value',num2str( length( QOuts ) ) )
for i=1:k
set_param(strcat(gcb,'/Constant',num2str( i )),'Value',num2str(QOuts(i)))
end
return
Узлы типа Р. Узлы типа Р используются для переключения заявок входного потока на одно из заданных направлений в соответствии с вероятностями, приписанными к каждому из выходов узла. Выбор направления движения заявки производится безотносительно к ее типу. Сумма вероятностей, приписанных выходам узла, должна равняться единице. Описание узла типа Р задается набором параметров: Р, NAME, NAMEV, PR, где Р — признак типа узла; NAME — символическое имя узла; NAMEV — символическое имя элемента, связанного с выходом узла; PR — вероятность перехода на данное направление. Параметры NAMEV, PR должны быть заданы в списке для каждого из выходов узла.
Реализация узла типа P в среде MATLAB
Prompt Type Variable
Probability Edit PR
Initialization commands
set_param( gcb, 'ReferenceBlock', '' )
global s
s=str2num(get_param(gcb,'PR'))
set_param(strcat(gcb,'/_Handle'),'Value',num2str(gcbh,16))
k=length(PR)
OldK=str2num(get_param(strcat(gcb,'/Old'),'Value'))
if k>OldK
for i=OldK+1:k
add_block( 'Librs/Out1' , strcat( gcb, '/Out' , num2str( i ) ) )
add_block( 'Librs/Constant' , strcat( gcb, '/Constant' , num2str( i ) ), 'Value', '[0 0 0 0]' )
add_line( gcb, strcat( 'Constant' , num2str( i ), '/1' ) , strcat( 'Out', num2str( i ) , '/1' ) )
end
else
for i=k+1:OldK
delete_line( gcb, strcat( gcb, '/Constant' , num2str( i ), '/1' ) , strcat( 'Out' , num2str( i ) , '/1' ) )
delete_block( strcat( gcb, '/Out' , num2str( i ) ) )
delete_block( strcat( gcb, '/Constant' , num2str( i ) ) )
end
end
set_param(strcat(gcb,'/Old'),'Value',num2str(k))
for i=OldK+1:k
set_param( strcat( gcb, '/Constant' , num2str( i ) ), 'Value', '[0 0 0 0]' )
end
return
function M=hub_p(u)
global s;
for i=1:length(s)
set_param(strcat(getfullname(u(5)),'/Constant',num2str(i)),'Value','[0 0 0 0]')
end
a=[]
for i=1:length(s)
kkk=s(i)*10
for j=1:kkk
a=[a i]
end
end
rr=round(rand*9)+1
rrr=a(rr)
set_param(strcat(getfullname(u(5)),'/Constant',num2str(rrr)),'Value',strcat('[',num2str([u(1) u(2) u(3) u(4)]),']'))
M=[0 0 0 0]
return
Узлы типа U. Узлы типа U используются для выбора маршрута движения заявки с учетом состояния, в котором находятся ресурсы на момент поступления заявки на вход узла. Узлы типа U включаются в сеть в тех случаях, когда маршрут заявки выбирается в зависимости от того, предоставляется заявке требуемый ею ресурс или нет. Узел типа U всегда имеет два выхода. По одному из них заявка направляется в случае, когда запрашиваемое ею устройство или память могут быть ей предоставлены. В противном случае заявка направляется на другой выход узла. Узлы типа U располагаются в сети непосредственно перед теми устройствами и элементами памяти, при запросе обслуживания на которых возможно изменение маршрута заявки. Узел типа U описывается набором параметров: U, NAME, NAME1, NAME2, где U — признак типа узла; NAME — символическое имя узла; NAME1 — символическое