Compare commits
	
		
			3 Commits
		
	
	
		
			4c208bc18a
			...
			016f634ac6
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					016f634ac6 | ||
| 
						 | 
					9ee41dc390 | ||
| 
						 | 
					7735cf8cba | 
@@ -743,11 +743,11 @@ defproc texel_dualcore_mapper (bd<N_IN> in, out;
 | 
			
		||||
    fork<32> postcore_fork(.in = fifo_core2fork.out, .reset_B = _reset_BX, .supply = supply);
 | 
			
		||||
    dropper_static<32, false> sram_dropper(.in = postcore_fork.out1, .cond = mapper_en, .supply = supply);
 | 
			
		||||
    // Need to have it then drop the spike if its from a register.
 | 
			
		||||
    demux_td<32, false> drop_if_reg(.in = sram_dropper.out, .reset_B = _reset_BX, .supply = supply); // if cond true, go out on data
 | 
			
		||||
    demux_td<32, true> drop_if_reg(.in = sram_dropper.out, .reset_B = _reset_BX, .supply = supply); // if cond true, go out on data
 | 
			
		||||
    drop_if_reg.cond.d.d[0] = sram_dropper.out.d.d[30];
 | 
			
		||||
    drop_if_reg.token.r  = drop_if_reg.token.a;
 | 
			
		||||
    fifo<8,N_BUFFERS> fifo_out_sram_spk(.out = out_sram_spk, .reset_B = _reset_BX, .supply = supply);
 | 
			
		||||
    slice_data<32,0,8> slice_to_sram(.in = drop_if_reg.out, .out = fifo_out_sram_spk.in, .supply = supply);
 | 
			
		||||
 | 
			
		||||
    slice_data<32,0,8> slice_to_sram(.supply = supply);
 | 
			
		||||
    // And move the msb (core bit) to just after the neuron address...
 | 
			
		||||
    slice_to_sram.in.a = drop_if_reg.out.a;
 | 
			
		||||
    slice_to_sram.in.v = drop_if_reg.out.v;
 | 
			
		||||
@@ -755,6 +755,10 @@ defproc texel_dualcore_mapper (bd<N_IN> in, out;
 | 
			
		||||
    slice_to_sram.in.d.d[7] = drop_if_reg.out.d.d[31];
 | 
			
		||||
    (i:7..30: slice_to_sram.in.d.d[i+1] = drop_if_reg.out.d.d[i];)
 | 
			
		||||
 | 
			
		||||
    fifo<8,N_BUFFERS> fifo_out_sram_spk(.in = slice_to_sram.out, .out = out_sram_spk,
 | 
			
		||||
        .reset_B = _reset_BX, .supply = supply);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    // merge from cores and sram read in
 | 
			
		||||
    fifo<29, N_BUFFERS> fifo_in_sram_r(.in = in_sram_r, .reset_B = _reset_BX, .supply = supply);
 | 
			
		||||
    fifo<32, N_BUFFERS> fifo_fork2mrg(.in = postcore_fork.out2, .reset_B = _reset_BX, .supply = supply);
 | 
			
		||||
 
 | 
			
		||||
@@ -387,6 +387,9 @@ namespace tmpl {
 | 
			
		||||
        
 | 
			
		||||
        // Demux 
 | 
			
		||||
        export template<pint N; pbool CONDITION_SIGN>
 | 
			
		||||
        // WARNING WARNING WARNING
 | 
			
		||||
        // With a False CONDITION_SIGN, this is wrong.
 | 
			
		||||
        // the c.t/f just need to be swapped, not inverted!!!
 | 
			
		||||
        defproc demux_td (avMx1of2<N> in; avMx1of2<N> out; a1of1 token; bool? reset_B; avMx1of2<1> cond; power supply) {
 | 
			
		||||
            //control
 | 
			
		||||
            bool _en, _reset_BX,_reset_BXX[N], _out_v, _in_c_v_, _reset_BXt;
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Reference in New Issue
	
	Block a user